Drupal网站一直将“内容类型”设置为“application/x-zip”


Drupal site setting `Content-Type` to `application/x-gzip` all the time

我正在将一个现有的Drupal网站从另一个提供商迁移到Bluehost.com——虽然我认为在这种情况下使用Bluehost.com并不重要,但我想我无论如何都会提到它,以防确实有一些我不知道的特殊性。

该网站是Drupal 6的安装,之前我在bluehost上也被告知它可以工作,所以你认为它应该没有任何问题,然而,在复制它之后,我遇到了一个大问题:Drupal的所有响应都是在Content-Encoding设置为application/x-gzip的情况下发送的。这意味着所有浏览器都会显示下载对话框,而不是呈现内容。

实际上,我已经对索引页进行了卷曲,并通过gunzip运行它,结果是该网站的正确HTML——只是它以某种方式被gzip化了,这破坏了内容类型并混淆了浏览器。

与之前的网站维护人员交谈时,他们建议使用PHP 5.4(据我所知,他们在PHP 5.5上运行它,尽管有Drupal的建议,但我被告知它运行得非常好)。

我现在正试图消除这里发生的任何类型的gzip’ing,所以我把它归结为几个可能导致它的层,但消除这些层仍然不起作用:

  • .htaccess中的SetEnv no-gzip 1
  • php.ini中的zlib.output_compression = Off
  • drupal在.htaccess中安装了boost模块和一些相应的设置——我已经从.htaccess文件中删除了这些设置,并从sites/all/modules中删除了boost目录

问题仍然存在,我的文件正在被压缩发送到浏览器。有没有其他方法可以禁用此功能?

请注意,这种情况只发生在Drupal内部的页面上,上传一个简单的php页面并导航到该url可以很好地工作——因此这表明存在Drupal(而不是apache.php)问题。

我注意到一个模块mimedetect中有application/x-gzip的定义,但不确定这会对它产生什么影响,因为删除它也没有任何用处。

有什么想法可以去哪里看和/或是什么原因导致的吗?

很乐意提供任何其他可能对诊断这一问题有用的见解。

好的,所以实际重置数据库缓存并使用上面的设置现在就可以了。我正试图弄清楚上面哪一个真正解决了这个问题。