php 和 apache 的问题

php 和 apache 的问题

我在使用 apache2 的 php 模块时遇到了麻烦。目前,使用 phpinfo 脚本进行测试时,只显示 php 代码,就像文本一样,没有任何输出。

我有一行LoadModule php5_module libphp5.so,带有绝对路径。

然而,当我这样做时apache2 -t -D DUMP_MODULES |grep php,什么也没有报告

我已将错误级别设置为警告,Apache 启动后日志文件中的最后一条条目是

[notice] Apache/2.2.15 (Unix) PHP/5.2.12 mod_ssl/2.2.15 OpenSSL/0.9.8g configured -- resuming normal operations

这意味着有 php 支持吗?

答案1

尝试一下。另外,在 /etc/apache2/*.conf 或 vhost 配置中grep -i php还有什么吗?AddHandler php5-script .php

答案2

我遇到了同样的问题,但这是因为 CentOS(我认为是 RHEL)默认情况下无法识别短标签...

<?

但需要长标签...

<?php

在 PHP 代码块的开头。

在 php.ini(可能是 /etc/php.ini)中查找“short_open_tag = off”。将其更改为“short_open_tag = on”,然后重新启动 Apache 以允许使用短标记。

答案3

确保您的处理程序看起来像第一个回复,并确保它位于 mod_mime 之后 -这很可能是处理程序问题

LoadModule mime_module modules/mod_mime.so

需要 Mod_mime 才能实际使用处理程序。如果找不到 mime.types(上述模块的依赖项),您会收到警告,但您可以执行find / -name mime.types此操作并将此文件复制到 /etc/httpd/conf/ 目录中。

http://httpd.apache.org/docs/2.0/mod/mod_mime.html 您可以通过设置此 TypesConfig 目录来确保它在正确的位置查找 MIME 类型: http://httpd.apache.org/docs/2.0/mod/mod_mime.html#typesconfig

您还可以查看添加以下几行是否有效果:

AddType application/x-httpd-php .php
AddHandler application/x-httpd-php .php

(类型对于客户端请求更为重要。)


一个简单的测试,可以查看您的 PHP 是否大部分都使用默认设置,方法是转到服务器上不存在的页面,从而生成 404 错误。它应该在底部告诉您类似以下内容的内容

未找到

该服务器上未找到所请求的 URL /test。

此外,尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误。


Apache/2.2.14 (Unix) mod_ssl/2.2.14 OpenSSL/0.9.8e-fips-rhel5 PHP/5.2.11

请注意此列表中的 PHP/5.2.11....

相关内容