在错误地将 php 升级到 5.4.8(从 dotdeb 升级)后,我运行的每个脚本都会在脚本末尾输出奇怪的垃圾。这里有 2 个线程:一个说我应该禁用 php5filter。这样做之后,apache 只是让我下载脚本而不是提供它们……另一个说 gzip 有问题。看起来像是一个愚蠢的错误,因为它以前不存在。而且没有关于如何修复它的解释。有人说这是由于没有在文件末尾添加新行造成的,但我有很多包含,我甚至不知道哪个文件应该添加这个新行,更不用说我不想这样做,因为我的编辑器设置为自动删除这样的垃圾……
有人可以帮忙解决这个问题吗,因为谷歌对此一无所知(或者至少我不知道如何提出这个问题)?
更新 1:执行 a2dismod deflate 可以解决问题,但我确实需要这个模块。 更新2:不知道这是否相关,但在这次升级之后,每个页面都以 transfer-encoding: chunked 发送,但在升级之前没有这样的标头并且 content-encoding 设置为“gzip”。
答案1
基本上,如果有人也遇到了这个问题,我所做的就是用之前安装的东西替换 apache2filter(它自己安装的)。类似这样的方法有帮助:
# this will replace apache2filter with libapache2-mod-php5
apt-get install libapache2-mod-php5
/etc/init.d/apache2 restart
因此不需要禁用 gzip 或任何东西,这就可以正常工作。