本节包括在 Microsoft Windows 系统中针对 Apache 2.0.x
安装 PHP 的指导与说明。在其它页面也有 Apache 1.3.x 用户指导与说明。
警告 |
不推荐将线程化 MPM
用于实际运作的 Apache 2 环境中去。用 prefork MPM 替代,或者用
Apache 1。其原因见 FAQ 中的使用线程化 MPM 的 Apache2。 |
强烈建议阅读
Apache 文档来加深对
Apache 2.0.x 服务器的基本理解。此外在继续下去之前考虑先阅读一下
Apache 2.0.x 的 Windows 下使用说明。
PHP 和 Apache 2.0.x 兼容性注意事项:
已知下列版本的 PHP 可以工作于最近版本的 Apache 2.0.x 之下:
以上版本的 PHP 与 Apache 2.0.40 或更高版本兼容。
Apache 2.0 SAPI 支持自 PHP 4.2.0
起。PHP 4.2.3 可工作于 2.0.39,不要用任何其它版本的 Apache
与 PHP 4.2.3 配合。不过推荐的设置是用 PHP 4.3.0
或更高版本与最新版的 Apache2 配合使用。
所有提及的 PHP 版本仍然能工作于 Apache 1.3.x 之下。
警告 |
Apache 2.0.x 被设计运行于 Windows NT 4.0,Windows 2000 或
Windows XP 之下。目前为止对 Windows 9x 的支持尚未完成,此时尚不指望
Apache 2.0.x 在此类平台下工作。
|
下载最新版本的
Apache 2.0.x 以及适合的 PHP 版本。先完成手工安装步骤后再回来继续将
PHP 集成入 Apache。
Windows 下有两种方法使 PHP 工作于 Apache 2.0.x 之中。一种是
使用 CGI 可执行程序,另一种是适用 Apache 模块的 DLL。不管哪种都需要编辑
httpd.conf 来配置 Apache 支持 PHP 并重新启动服务器。
注: 记住在
Windows 下给 Apache 的配置文件中加入路径值的时候,所有的反斜线例如
c:\directory\file.ext 必须转换成正斜线,如
c:/directory/file.ext。
需要将以下三行加入到 Apache 的 httpd.conf 配置文件中以设定 CGI:
例子 6-5. PHP 在 Apache 2.0 中的 CGI 方式 ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
# 对 PHP 4 用这行
Action application/x-httpd-php "/php/php.exe"
# 对 PHP 5 用这行
Action application/x-httpd-php "/php/php-cgi.exe" |
|
警告 |
如果使用 CGI
方式安装,则服务器对于某些可能的攻击是开放的。请阅读
CGI
安全一章以学习如何防御这些攻击。 |
需要将以下两行加入到 Apache 的 httpd.conf 配置文件中以设定
Apache 2.0 的 PHP 模块:
例子 6-6. PHP 在 Apache 2.0 中的模块方式 # 对 PHP 4 用这两行:
LoadModule php4_module "c:/php/php4apache2.dll"
# 别忘了从 sapi 目录中把 php4apache2.dll 拷贝出来!
AddType application/x-httpd-php .php
# 对 PHP 5 用这两行:
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
# 配置 php.ini 的路径
PHPIniDir "C:/php" |
|
注:
记得用自己 PHP 实际所在的路径替换掉上例中的
c:/php/。要留意在 LoadModule 指令中用的是
php4apache2.dll 或
php5apache2.dll,而不是
php4apache.dll 或
php5apache.dll,后者是设计用于
Apache 1.3.x 的。
注:
如果要使用内容协商机制,请阅读有关
FAQ。
警告 |
不要在安装中混合使用来自不同 PHP 版本的
DLL。使用下载回来的 PHP 版本中所提供的 DLL 和扩展库是唯一选择。
|