在Windows下成功安装PHP是毫无悬念的,但同时也是需要一些运气的。本文记录了一次成功安装的过程,希望对大家能有所帮助。本文安装的环境为Windows 7 Ultimate English version + Apache Http Server 2.2.15 + PHP 5.3.2。
1. 安装Apache Http Server
Apache Http Server 2.2.15可以从Apache官方网站下 载:
http://httpd.apache.org/download.cgi
下载下来 的msi文件直接双击安装 即可。
2. 安装PHP 5.3.2
本次安装使用的是PHP的压缩文件版本,具体来说是: php-5.3.2-Win32-VC9-x86。可以 从http://windows.php.net/download/ 下载得到。下载其它版本的时候,需要注意的是,必须要包含php5apache2_2.dll,否则的话,下载下来的文件是无法配置的。就目前PHP官方网站提供 的各个版本:
· php-5.3.2-nts-Win32-VC9-x86.zip 不包含php5apache2_2.dll。PHP不想继续支持非线程安全(non-threadsafe)的版本了?
· php-5.2.13-nts-Win32-VC6-x86.zip 包含php5apache2_2.dll, 但安装下来无法使用。
由于下载的是压缩文件版本, 解压到某个文件夹即 可。这个地址在本文将被应用为PHP5_HOME。
3. 配置
3.1 配置Apache Server使其支持PHP5
编辑Apache Server目录下的conf/httpd.conf文件,加入以下指令(建议加载最后一个LoadModule指令后):
LoadModule php5_module "PHP5_HOME\php5apache2_2.dll" #注意, PHP5_HOME必须按照安装环境展开, 例如: # LoadModule php5_module " E:\development\php\php-5.3.2-Win32-VC9-x86\php5apache2_2.dll" #总之, PHP5_HOME\php5apache2_2.dll必须指向PHP的安装目录下的php5apache2_2.dll文件
<IfModule php5_module> #对于.php的请求, 我们要将其MIME设置为application/x-httpd-php, 不然会直接返回php文件的内容 AddType application/x-httpd-php .php </IfModule> |
3.2 配置PHP5
1). php.ini文件
检查PHP5_HOME文件夹, 你会发现php.ini-development和php.ini-production, 将其中一个重命名为php.ini(不放心后续的话,请备份文件)。php.ini需要修改的地方有:
· extension_dir
; Directory in which the loadable extensions (modules) reside. ; http://php.net/extension-dir ; extension_dir = "./" ; On windows: extension_dir = "PHP5_HOME/ext"
; 与前面类似, PHP5_HOME需要展开 ; extension_dir = " E:/development/php/php-5.3.2-Win32-VC9-x86/ext" |
注意, extension_dir必须使用绝对路径, 如果按照php.ini提示的那样使用extension_dir="ext", 是不能找 到extensions的。
· 根据需要启用extension
比如要启用mysql扩展, 直接打开前面的注释符号即可:
; extension=php_mysql.dll
----->
extension=php_mysql.dll
2). 其实此时可以开启Apache Server测试了
利用下面的脚本, 可以看到当前PHP的配置情况:
<?php echo phpinfo(); |
将这个文 件放在Apache Server下的hotdocs目录中,然后通过浏览器访问即可。但是, 这时候你会看到:
Configuration File (php.ini) Path C:\windows
Loaded Configuration File (none)
由此可见,php.ini文件实际 上是从C:\windows下加载的,不出意外的话,C:\windows\php.ini文件是不存在的(在这种情况下, PHP实际上使用的是一些缺省的配置)。为了解决这个问题,有两种方法:
1). 将配置php.ini移到C:\Windows。这种方法自然有效,但不利于扩展,也干得 不漂亮;
2).修改注册表--添加HKEY_LOCAL_MACHINE\SOFTWARE\PHP, 然后在其下添加key-value对:
Key: IniFilePath value: PHP5_HOME
重新启动Apache, 并检测 环境, 应该可以看到Loaded Configuration File会有所变化。
Ps: 如果Apache出错的话, 将记录在Apache Server下的logs/error.log文件中。
评论