PHP5.1.5_Apache2.2.3_MySQL5.0.24安装配置

来源:互联网 发布:域名邮箱反差 编辑:程序博客网 时间:2024/05/17 23:53

所需软件(注意版本!):
Apache2.2.3
PHP5.1.5
MySQL5.0.24
这三个软件都是免费的,可从官网上下载,目前我所有的软件名为:
apache_2.2.3-win32-x86-no_ssl.msi
mysql-5.0.24-win32.zip
php-5.1.5-Win32.zip

基于windows操作系统,在Windows XP下安装使用:
1、安装过程:
首先安装Apache服务器,双击apache_2.2.3-win32-x86-no_ssl.msi即可安装。和一般安装没有什么两样,可采用默认安装。这里选用complete安装,安装目录可以任意选择,这里为:D:/Program Files/Apache Software Foundation/Apache2.2;
接着将PHP压缩包(php-5.1.5-Win32.zip)解压到一个目录里,例如:D:/php5
最后安装MySQL,解压后双击Setup.exe文件进行安装,安装过程中最好新创建一个用户并设定密码,选择可以在命令行下运行选项;安装完之后即可进行详细的配置,如数据库目录(C:/database)等等。
2、实现主要配置:
安装是比较简单的过程,最主要的还是配置问题。
首先实现PHP与Apache的连接,在Apache安装目录下的conf目录里有个配置文件httpd.conf,用记事本打开,找到以下几行:
1)Listen 80
ServerName NerverWinter.domain:80
2)#LoadModule ssl_module modules/mod_ssl.so
3)DocumentRoot "d:/Program Files/Apache Software Foundation/phpdocuments"
4)<Directory "d:/Program Files/Apache Software Foundation/phpdocuments">
5)DirectoryIndex index.html default.php
6)AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz

1)Listen是Apache服务器监听端口,默认为80,可以更改,注意ServerName NerverWinter.domain:80这一行的端口号要和listen的一致;
2)在#LoadModule ssl_module modules/mod_ssl.so下面增加一行:
LoadModule php5_module modules/php5apache2.dll(注意:必须将php安装目录里的php5apache2.dll拷贝至Apache安装目录下的modules目录)
3)DocumentRoot为服务器文档根目录,为了管理文件,我将其设为D:/wwwroot目录(自己首先要创建该目录)
4)接着还要修改上面第4项的目录为上面指定的根目录的路径
5)为默认访问的网页,可以增加default.php等
 例如:DirectoryIndex index.html index.php
6)在第6项后面增加
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php .php
以支持不同的文件类型

然后在php安装目录下找到php.ini-recommended,将其重新命名为php.ini,用记事本打开找到以下一些行:
extension_dir =
;extension=php_mysql.dll
mysql.default_port =
mysql.default_host =
mysql.default_user =
mysql.default_password =
session.save_path =

1)修改extension_dir的路径为php安装目录下的ext目录,如D:/Program Files/php5/ext;
2)去掉extension=php_mysql.dll前面的分号以支持Mysql;
3)mysql默认端口为3306,主机为本地主机,用户为root,密码看自己的情况而设定,例如下:
mysql.default_port =3306
mysql.default_host =localhost
mysql.default_user =root
mysql.default_password =“密码”
4)session.save_path用于存储对象数据等等,可以修改为自定义目录,如:D:/Program Files/php5/session;

做好上述设置后,将php.ini文件复制到系统目录windows下,注意:还需将php安装目录下的php5ts.dll、libmysql.dll及ext目录下的php_mysql.dll文件拷贝至system32目录下


3、相关问题
在配置好所有文件后,重起Apache服务器出现了requested failed的警告,后来查阅得知Apache2.2不支持php5类库(原因:PHP压缩包里的php5apache2.dll只适用于apache2.0.*),但是有方法解决,从网上下载了三个相关文件:
httpd.exe.manifest
php5apache2.dll
vcredist_x86.exe

4、解决方法
目录里面有个压缩包:php5hack.rar,里面有一个Windows Installer 3.1的升级补丁: WindowsInstaller-KB893803-x86.exe,还有一个压缩包,再解压则有下面三个文件:
vcredist_x86.exe
php5apache2.dll
httpd.exe.manifest

步骤:

1、将 php5apache2.dll 覆盖掉你原来PHP目录下的 php5apache2.dll 文件.
2、将 httpd.exe.manifest 文件复制到你的apache安装目录下的bin文件夹下.
3、双击运行vcredist_x86.exe安装.(如果您的系统里已安装了 .NET framework 2.就可以省掉这一步)
如果第三步出现错误,则安装Windows Installer 3.1的升级补丁,那么就可以完成第三步了。完成后去重启你的apache2.2试试吧.


5、测试
a 测试php是否连接上了服务器,可以打开记事本输入代码<?php phpinfo();?>并保存为version.php文件放在根目录下,在浏览器地址栏里输入:
http://localhost:81/version.php即可测试配置是否成功;
b 测试php是否可以连接上mysql数据库,同样可以打开记事本输入:
<?php
$link=mysql_connect('localhost','root','123456');
if(!$link) echo "failed";
else echo "Success";
mysql_close();
?>
保存为testmysql.php并用浏览器测试。

6、补充(不一定有):
测试表单提交(即用超全局变量获得提交内容)不成功,测试MySQL数据库出现Call to undefined function mysql_connect()错误,同样也上网查阅了一组,结果费尽周折,偶然将php.ini分别放在系统windows目录和Apache安装目录里成功解决上述问题。