/ 中存储网

Windows系统中PHP 5.3.9 + Apache 2.2.17安装配置过程

2014-02-17 09:29:01 来源:itjs.cn

笔者配置PHP版本是最新的php5.3.9,大家可以从官方网站下载最新版本,关于MySql和Apache的安装,本文不再赘述,下面主要介绍MySQl 5.1、Apache 2.2安装以及相互配置。

首先介绍一下php各版本之间的区别,php版本后面一般有VC6和VC9、Thread Safe和Non Thread Safe的区别,VC6就是legacy Visual Studio 6 compiler,就是使用这个编译器编译的,VC9就是the Visual Studio 2008 compiler,就是用微软的VS编辑器编译的,如果你选用的是Apache或者其他服务软件,那么选择VC6,选用的是IIS的话,那么请下载VC9的。Thread Safe 是线程安全,而Non ThreadSafe就是非线程安全, 官方并不建议你将Non Thread Safe 应用于生产环境,所以一般选择Thread Safe版本的下载就可以了。下载Zip包就可以了。

将你下载的解压包,解压,重名成PHP,我把它放在了E盘内,你根据自己的情况选择,但下面配置过程中,涉及到路径的也请视情况更改。复制后打开文件夹,找到php.ini-development,重命名为php.ini,当然你可以先复制一份php.ini-development以作备用,防止配置过程中出现不可挽回的错误。

一、首先打开php.ini,找到:

; On windows:

; extension_dir = "ext"

修改为:

; On windows:

extension_dir = "E:/PHP/ext"

即去掉extension_dir前面的分号(注意斜杠方向),表示指定PHP扩展包的具体目录,以便调用相应的DLL文件。

二、由于默认PHP并不支持自动连接Mysql,需开启相应的扩展库功能,比如php_mysql.dll等,即将:

extension=php_curl.dll          //CURL,客户端 URL 库函数库

extension=php_gd2.dll           //GD绘图函数模块

extension=php_mbstring.dll       //多字节函数模块

extension=php_mysql.dll         //MySql函数模块

extension=php_mysqli.dll         //MySqli函数模块

extension=php_pdo_mysql.dll     //PDO MySql函数模块

extension=php_pdo_odbc.dll       //PDO ODBC函数模块

extension=php_xmlrpc.dll        //XML-RPC函数库

extension=php_xsl.dll           //XSL函数模块

这些extension之前的分号(;)去除。

三、配置PHP的Session功能

在使用session功能时,我们必须配置session文件在服务器上的保存目录,否则无法使用session,我们需要在Windows7上新建一个可读写的目录文件夹,此目录最好独立于WEB主程序目录之外,此处我在D盘根目录上建立了phpsessiontmp目录,然后在 php.ini配置文件中找到:

;session.save_path = "/tmp"

修改为:

session.save_path = "D:/phpsessiontmp"

四、配置PHP的文件上传功能

同session一样,在使用PHP文件上传功能时,我们必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败,我们仍然需要在 Windows 7上建立一个可读写的目录文件夹,此处我在D盘根目录上建立了phpfileuploadtmp目录,然后在php.ini配置文件中找到:

;upload_tmp_dir =

修改为:

upload_tmp_dir = "D:/phpfileuploadtmp"

五、修改date.timezone,否则在执行phpinfo时date部分会报错:

Warning: phpinfo()[function.phpinfo]…

找到:

;date.timezone =

修改为:

date.timezone = Asia/Shanghai

至此在Windows 7上php的环境配置就算完成了,但是光完成这些配置是不够的,我们需要Apache支持PHP,所以还需要在Apache配置文件中完成相应的PHP配置。

“register_globals = Off”值,这个值是用来打开全局变量的,比如表单送过来的值,如果这个值设为“Off”,就只能用“$_POST['变量名']、$_GET['变量名 ']”等来取得送过来的值,如果设为“On”,就可以直接使用“$变量名”来获取送过来的值,当然,设为“Off”就比较安全,不会让人轻易将网页间传送的数据截取。这个值是否改成“On”就看自己感觉了,是安全重要还是方便重要?

以下是配置Apache以支持PHP:

找到Apache安装目录下的conf文件夹下的httpd.conf,打开:

一、在#LoadModulevhost_alias_modulemodules/mod_vhost_alias.so下添加如下(路径适你自己的情况而定):

LoadModule php5_module "c:/php/php5apache2_2.dll"

PHPIniDir "c:/php"

AddType application/x-httpd-php .php .html .htm

我们在PHP目录下可以看到多个php5apache的DLL文件,由于我们使用的是Apache2.2.17,所以我们当然需要使php5apache2_2.dll,接着指定PHP的安装目录以及执行的程序扩展名。

二、我们应该知道默认Apache服务器执行WEB主程序的目录为Apache2.2/htdocs,所以当你的WEB主程序目录变更时,我们需要修改相应的Apache配置,即将:

DocumentRoot "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs"

修改为:

DocumentRoot "E:/PHPWeb"

令将:

<Directory "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs">

修改为:

<Directory"E:/PHPWeb">

三、最后修改具体的index文件先后顺序:

DirectoryIndex index.html

修改为:

DirectoryIndex index.phpindex. Html

四、重启Apache服务器

至此,在Apache服务器上PHP环境配置工作就完成了,你只需要在E:/PHPWeb目录下新建一个PHP文件,写入:

<?php

phpinfo();

?>

然后在游览器中输入12.0.0.1,就可以看到PHP的具体配置页面了,代表在Window 7上PHP环境配置工作就算完成了。

验证PHP是否能连接Mysql,你可以在index.php中创建如下代码:

<?php

$connect=mysql_connect("127.0.0.1","root","你的数据库密码");

if(!$connect) echo "Mysql Connect Error!";

else echo "连接成功";

mysql_close();

?>

然后在游览器中输入127.0.0.1,看到:连接成功字样就说明PHP连接Mysql就算成功了。