1

我在 Debian 6 上使用带有 DotDeb 包的 mod_fcgid 运行 php。

一旦我将 php 升级到 5.4.25 版,apache 就会下载 php 文件,因为它无法识别处理程序。我没有更新任何配置文件。一旦我恢复到 5.3.28,它就可以正常工作了。我无法跟踪错误日志中的任何内容。

唯一的区别是 dotdeb 在 5.4 中没有使用 suhosin 的 php 构建,但不应该有所作为,因为 5.3 版本即使在禁用 suhosin 的情况下也可以工作。

任何想法如何调试这个?

4

2 回答 2

2

听起来您的 .htaccess 文件中可能有一个条目,类似于

AddHandler application/x-httpd-php54 .php

或者

AddType application/x-httpd-php54 .php

当使用 .htaccess 告诉 apache 使用哪个版本的 PHP 时,如果声明的版本在服务器上不存在或者与服务器已经在运行的 PHP 版本相同,则会导致这个确切的问题。

于 2014-02-18T19:35:44.247 回答
1

事实证明,新版本的 Apache 需要不同的配置:

/etc/apache2/sites-available/{mysite}.conf的站点配置中,我添加了:

<FilesMatch \.php$>
    SetHandler fcgid-script
</FilesMatch>

并评论了这一点:

#AddHandler fcgid-script .php
#AddHandler fcgid-script .php5

/etc/apache2/mods-available/fcgid.conf中的相同内容

于 2014-02-19T12:18:10.360 回答