笔者配置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就算成功了。