本部分介绍了 PHP 在 Apache 2.0 服务器上安装的提示和注意事项。本文所述的内容同时适用于 Unix 和 Windows 版本的 PHP。
警告 |
在企业级应用中无论是 Unix 还是 Windows 都不要使用 Apache 2.0 和 PHP 的组合。 |
推荐您查看 Apache 文档,了解一下 Apache 2.0 服务器。
如下版本的 PHP 可以正常工作在最新版本的 Apache 2.0 中:
注: Apache 2.0 SAPI 从 PHP 4.2.0 开始支持。PHP 4.2.3 可以工作在 Apache 2.0.39 下,不要尝试使用该版本的 PHP 在其它任何版本的 Apache 2 下工作。我们建议的配置是将 PHP 4.3.0 安装在最新版本的 Apache 2 下。
所有提到的 PHP 版本仍然能够在 Apache 1.3.x 下工作。
下载最新版本的 Apache 2.0,并且根据上文选择合适版本的 PHP 下载。本向导仅包含最基础的内容,只能让 Apache 2.0 和 PHP 能够正常工作。更多信息请阅读 Apache 文档。这里省略所有的版本号,以保证本文的正确性。您需要将本文的“NN”替换为相应的版本号。
按照上面的步骤您便可以使 Apache 2.0 将 PHP 作为 SAPI 模块了。当然 Apache and PHP 都还有很多配置选项,您可以在相应的源代码目录中使用 ./configure --help 获得更多信息。假如您要编译一个多线程版本的 Apache 2.0,您必须覆盖标准的 MPM-Module prefork,或者 worker 或者 perchild。要这样,您需要在上面的第 6 步使用 --with-mpm=worker 或者 --with-mpm=perchild 选项。之前您需要了解您正在做什么。更多信息请参考 Apache 文档中关于 MPM-Modules 的部分。
注: 要编译多线程版本的 Apache,您的系统必须支持多线程。这也意味着需要将 PHP 编译为正处在试验阶段的 Zend Thread Safety (ZTS)。因此并不是所有的扩展都可以使用了。推荐编译 Apache 使用标准的 prefork MPM-Module。
您可以阅读 Apache 2.0 Windows 特别注意事项。
警告 |
Apache 2.0 被设计为运行在 Windows NT 4.0、Windows 2000 或 Windows XP。现在并不支持 Windows 9x。目前不推荐 Apache 2.0 运行在上述平台。 |
下载最新版本的 Apache 2.0 和合适的 PHP 版本。 首先请查看 手动安装步骤,然后回来继续安装 PHP 和 Apache。
有两种方法使得 PHP 工作在 Windows 下的 Apache。一是使用 CGI 二进制文件,另一是使用 Apache 模块 DLL。无聊那种方法,您首先必须停止 Apache 服务器,然后编辑 httpd.conf,以配置 Apache 和 PHP 协同工作。
您需要将如下指令插入到 Apache 的 httpd.conf 配置文件中,以设置CGI 二进制文件:
如果您想把 PHP 作为 Apache 2.0 的模块,请务必移动 php4ts.dll 到 winnt/system32(Windows NT/2000)或 windows/system32 (Windows XP),覆盖原有文件(如果有的话)。然后您需要插入如下两行到 httpd.conf 中,以使您的 PHP 作为 Apache 的 PHP-Module 安装:
注: 记得替换 c:/php/ 为您计算机上 PHP 的实际路径。请注意在您的 LoadMolude 设置选项中使用 php4apache2.dll 而非 php4apche.dll,后者是为 Apache 1.3.x 设计的。
警告 |
不要混用不同 PHP 版本的 DLL 文件。您只能使用您下载的一个版本 PHP 中的 DLL 和扩展。 |