本部分介绍了 PHP 在 Apache 2.0
    服务器上安装的提示和注意事项。本文所述的内容同时适用于
    Unix 和
    Windows 版本的 PHP。
   
| 警告 | 
| 
     在企业级应用中无论是 Unix 还是 Windows 都不要使用 Apache 2.0 和
     PHP 的组合。
     | 
     推荐您查看 Apache 文档,了解一下
     Apache 2.0 服务器。
    
     如下版本的 PHP 可以正常工作在最新版本的 Apache 2.0 中:
     
      这些版本的 
PHP 能够与 Apache 2.0.40 或更高版本兼容。
    
注: 
      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”替换为相应的版本号。
    
| 例子 3-6. 
      安装说明(Apache 2 共享模块版本)
      | 1.  gzip -d httpd-2_0_NN.tar.gz
2.  tar xvf httpd-2_0_NN.tar
3.  gunzip php-NN.tar.gz
4.  tar -xvf php-NN.tar
5.  cd httpd-2_0_NN
6.  ./configure --enable-so
7.  make
8.  make install
    现在您已经将 Apache 2.0.NN 安装在 /usr/local/apache。本安装支持可装载模块
    和标准的 MPM prefork。之后,可以使用如下命令启动 Apache 服务器:
    /usr/local/apache2/bin/apachectl start
    如果成功,您可以停止 Apache 服务器并继续安装 PHP:
    /usr/local/apache2/bin/apachectl stop.
9.  cd ../php4-NN
10. 现在我们需要配置 PHP。在这里您可以用各种各样的参数来自定义PHP,例如启动哪
    些扩展功能包的支持等。用 ./configure --help 命令可以列出当前可用的所有参
    数。在我们的例子中,我们将给出一个在有 MySQL 支持的 Apache 2 上进行配置的
    范例。您本地的 apxs 的路径可能会不同,事实上,在您的系统中,它可能被命名为
    apxs2。
    ./configure --with-apxs2=/usr/local/apache2/bin/apxs
11. make
12. make install
    如果您决定在安装后改变配置选项,您只需重复最后的三步,然后需要重新启动
    Apache 使新模块生效。无需重新编译。
    请注意,除非明确有提示,否则 'make install' 命令将安装 PEAR、各种 PHP 工具
    诸如 phpize,安装 PHP CLI 等等。
13. 配置 php.ini
    cp php.ini-dist /usr/local/lib/php.ini
    您可以编辑 php.ini 文件以修改 PHP 的选项。如果您想要把此文件放到另外的位置,
    您需要在步骤 10 添加 --with-config-file-path=/path 选项。
    如果您选择 php.ini -recommended,请务必阅读其中的变更的列表,它们将影响
    PHP 的执行。
14. 编辑 httpd.conf 文件以调用 PHP 模块。LoadMolude 表达式右边的路径必须指向您
    系统中的 PHP。以上的 make install 命令可能已经帮您完成了这些,但务必要检查。
    对于 PHP 4:
       LoadModule php4_module modules/libphp4.so
    对于 PHP 5:
       LoadModule php5_module modules/libphp5.so
15. 告知 Apache 将特定的扩展名解析成 PHP,例如,我们让 Apache 将扩展名 .php
    解析成 PHP。您可以将任何扩展名指定为 PHP,只需添加它们,每一个用空格分隔。
    例如,我们要添加 .phtml:
    AddType application/x-httpd-php .php .phtml
    通常,我们还将 .phps 扩展名设置成显示高亮的 PHP 源文件,可以这样来完成:
    AddType application/x-httpd-php-source .phps
16. 启动您的 Apache 服务器:
   /usr/local/apache2/bin/apachectl start | 
 | 
     按照上面的步骤您便可以使 Apache 2.0 将 PHP 作为
     SAPI 模块了。当然 Apache 和 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 二进制文件:
     
| 例子 3-7. PHP 以 CGI 方式安装到 Apache 2.0 | ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php.exe" | 
 | 
    
     如果您想把 PHP 作为 Apache 2.0 的模块,请务必移动
     php4ts.dll 到
     winnt/system32(Windows NT/2000)或
     windows/system32(Windows XP),覆盖原有文件(如果有的话),对于
     PHP 5,这个文件是 php5ts.dll。然后您需要插入如下两行到
     httpd.conf 中,以使您的 PHP 作为 Apache 的 PHP-Module 安装:
     
| 例子 3-8. PHP 以模块方式安装到 Apache 2.0 | ; For PHP 4 do something like this:
LoadModule php4_module "c:/php/sapi/php4apache2.dll"
AddType application/x-httpd-php .php
; For PHP 5 do something like this:
LoadModule php5_module "c:/php/sapi/php5apache2.dll"
AddType application/x-httpd-php .php | 
 | 
    注: 
      记得替换 c:/php/ 为您计算机上 PHP
      的实际路径。请注意在您的 LoadMolude 设置选项中使用
      php4apache2.dll 或者
      php5apache2.dll,而非
      php4apache.dll,后者是为 Apache 1.3.x 设计的。
     
| 警告 | 
| 
      不要混用不同 PHP 版本的 DLL
      文件。您只能使用您下载的一个版本 PHP 中的 DLL 和扩展。
      |