您的位置:首页 > 运维架构 > Apache

PHP+Mysql+Apache搭建环境

2014-02-24 11:14 357 查看
所需软件:php-5-2-9-win32

apache_2.2.11-win32-x86-openssl-0.9.8i

mysql-5.0.67-win32

1.安装apache

直接按默认安装,安装时要关闭浏览器跟下载软件,否则安装完成后服务器不能启动,报不能绑定80端口的错误。在安装过程中需要输入服务器的相关信息(Server Information 的 Network Domain、Server Name 等),根据自己的情况输入即可,在安装结束时,会弹出一个
DOS 窗口,然后就消失了,这是系统apache自动启动了。启动后在地址栏中输入“http://localcast/”或“http://127.0.0.1/”,如果可以看到"It Works",说明安装成功。

默认路径是“C:/Program Files/Apache Software Foundation/Apache2.2/htdocs”,如果需要更改默认路径,打开“C:/Program Files/Apache Software Foundation/Apache2.2/conf”目录下的httpd.conf文件,查找“DocumentRoot(这里有两处都必须改)”,将其路径修改成需要设置的访问路径,这里改为“F:/masterphp”(注意斜杠方向,是“/”而不是\”)。

2. PHP的安装配置

下载后直接解压就可以了,我解压到“F:\php-5.2.9-win32”目录下。下面将PHP和Apache服务期连接:

(1)修改“F:\php-5.2.9-win32”目录下"php.ini-recommened"文件名,改成"php.ini" ;

(2) 将“F:\php-5.2.9-win32”目录下php.ini-recommened 复制一份,命名为
php.ini(此步在“F:\php-5.2.9-win32”下完成)并拷贝到Apache目录下,即“C:\Program Files\Apache Software Foundation\Apache2.2”目录下

(3)打开php.ini文件,修改以下几个关键字

查询extension_dir = "./"修改为

extension_dir = "F:\php-5.2.9-win32\ext"

如果在显示中文的时候出现乱码,可以查询;default_charset = "iso-8859-1"修改为

default_charset = "gbk",注意要去掉前面的“;”

很多时候需要利用session对象来存储数据,如session身份验证、设计购物车等,因此还必须要找到另外一个属性,即把

;session.save_path = "/tmp"修改为

session.save_path = "F:\php-5.2.9-win32\session"

(session文件夹需手工创建,也可以创建其他的目录,必须去掉前面的分号“;”)

查找display_errors和cgi.force_redirect,原始设置为

display_errors = Off

; cgi.force_redirect = 1

修改为

display_errors = ON

cgi.force_redirect = 0

(display_errors属性表示在运行时如果发生错误,是否会显示错误信息。而cgi.force_redirect为0表示强制不运行在CGI模式下)

PHP在Apache中工作,有两种方式,一种是以CGI二进制文件方式工作,一种是使用Apache模块DLL的方式工作,采用不同的方式,需要在php.ini文件中进行不同的设置。

(如果采用CGI方式,则需要将以下代码插入到Apache的httpd.conf文件中:

ScriptAlias /php/ "C:/Program Files/php-5.2.5-Win32"

AddType application/x-httpd-php .php

Action application/x-httpd-php "/php-5.2.5-Win32/php.exe")

我采用模块化的工作方式,则首先需要将"F:\php-5.2.9-win32"下的php5ts.dll文件拷贝到系统的C:\WINDOWS\system(Windows XP);接着将"F:\php-5.2.9-win32"下的php5apache2_2.dll(这是Apache的版本号,如果是2.0版本的则复制php5apache2.dll)文件复制到"C:\Program Files\Apache Software Foundation\Apache2.2\modules"下,然后将下面的一段代码插入到httpd.conf文件的最后

LoadModule php5_module modules/php5apache2_2.dll

AddType application/x-httpd-php .php

如果还想让Apache执行其他后缀名,则可添加其他的类型,如下所示

AddType application/x-httpd-php .php4

AddType application/x-httpd-php .php3

AddType application/x-httpd-php .phtml

AddType application/x-httpd-php-souce .phps

Apache默认的连接文件名为"index.html",即如果在地址栏中输入"http://localhost/"和输入"http://localhost/index.html"显示结果一致,如果想增加其他的默认连接文件名,则在httpd.conf中找到"DirectoryIndex",原始设置如下:

DirectoryIndex index.html

如果想支持default.php,则修改成如下格式:

DirectoryIndex default.php index.html index.html.var

为了测试PHP配置是否成功,打开记事本输入以下代码:

<?php

phpinfo()

?>

将该代码保存成version.php,拷贝到"F:\master.php"目录下,停止apache服务器,再启动。在地址栏输入"http://localhost/version.php"如果一切配置正常,可以看到PHP的各种信息.

3. MySQL的安装配置

安装过程应该没问题不再细述,在设置Windows选项时复选Include Bin Directory in Windows PATH,这样在命令行下也可以启动MySQL数据库。

点“开始”—>“运行”,在弹出的对话框中输入“cmd”,再在命令模式下输入“mysql -h localhost -u root -p”如:


输入密码之后若出现mysql>标志,则表示安装成功,如:



MySQL安装成功后还需要同PHP连接上,因此,还需要进一步配置。

打开“C:\Program Files\Apache Software\Foundation\Apache2.2”目录下php.ini文件,查找"MySQL",修改以下几个属性

原始设置为:

mysql.default_port =

mysql.default_host =

mysql.default_user =

mysql.default_password =

修改为:

mysql.default_port = 3306 (网络端口,安装时默认设置为3306)

mysql.default_host = localhost (default_host为服务期名称,localhost表示本地机器)

mysql.default_user = root (default_user表示用户名,root是默认的用户名)

mysql.default_password = 123456 (即安装MySQL时输入的密码)

修改了以上属性后,还需要启动PHP对MySQL支持模块,在php.ini文件中查找"extension=php_mysql.dll"

原始设置为:

;extension=php_mysql.dll

修改为

extension=php_mysql.dll (即把分号去掉)

设置完成后重启系统,重启后测试MySQL是否安装成功,打开记事本写下测试代码,如下:

<?php

$link=mysql_connect("localhost","root","123456");

if(!$link) echo "失败!";

else echo "成功!";

mysql_close();

?>

(代码要写正确啊,不然你是测不出来的!)

保存为“mysqltest.php”并放到默认路径下,如我的已经改到了“F:/masterphp”下,在地址栏输入"http://localhost/mysqltest.php",如果连接成功,则会显示“成功!”

出现的问题解决办法:

如果连接之后无法访问到数据库,libmysql.dll和php5ts.dll也复制到Windows目录下的system文件夹下了,还是没能解决的话,则把PHP下路径以及PHP/ext路径添加至环境变量的path中,或者将两者下的文件复制到system文件下即可,然后重启计算机即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: