我今天早些时候重新编译了 PHP,现在当您在浏览器中访问 PHP 页面时,Apache 会显示其源代码而不是对其进行解析。我需要重置某些配置或重新编译 Apache 吗?
这是在 Centos 5.5 上,Apache 2.2 和 PHP 5.2.17
答案1
检查以确保您的 libphp.so(或 libphp5.so)位于正确的位置。如果它安装在不同的地方,您需要更新 apache 认为它所在的位置。根据您的 apache 设置方式,应该有一个 IfModule 块来加载 apache 模块。它看起来像这样:
<IfModule !mod_php5.c>
LoadModule php5_module /usr/lib/php5.3/apache2/libphp5.so
</IfModule>
路径和模块名称可能不同。但如果这些都没问题,可能是你正在使用带有 ExecCGI 的“操作”,例如:
AddHandler php-cgi .php
Action php-cgi /var/www/localhost/cgi-bin/php.cgi
cgi 模块的路径可能已经改变。
答案2
从命令行类型:
apachectl 配置测试
您是否遇到任何错误?
在 httpd.conf 中,以下行被取消注释:
加载模块 php5_module ...