Linux

使用現有 apache 配置 PHP 時出錯

  • September 19, 2014

我收到這條消息:

configure: error: Invalid Apache directory - unable to find httpd.h under /usr/lib64/httpd/

執行以下命令後:

./configure --with-apache=/usr/lib64/httpd/

我不知道我已經安裝的 apache 上的頂級 DIR 在哪裡。apache 服務已經安裝在我的 CentOS 6.5 伺服器上,使用yum install httpd.

  • Apache 版本 2.2.15-31
  • PHP 版本 5.4.25

這是我的問題的最終解決方案:

從儲存庫安裝 httpd-devel 包yum install httpd-devel,其中包含 apache 的標頭。

使用 apxs2 配置 php: ./configure --with-apxs

最後一步是在 httpd.conf 文件(或包含的 .conf 文件)的 VirtualHost 中添加以下行:

<FilesMatch \.php$>
   SetHandler application/x-httpd-php
</FilesMatch>

如果您的 apache 已經建構和配置,您應該將 PHP 編譯為共享模組而不是靜態模組。

成本略高,但您可以單獨升級每個組件。

配置範例:

$ ./configure --with-apxs=<path to apxs binary in apache/http bindir>

忘了一件事:你的 apache 必須使用 mod_so 編譯才能使用用 apxs 建構的動態模組

引用自:https://serverfault.com/questions/629549