防止Apache mod_deflate压缩空的302redirect响应

Apache与mod_deflate(无用)压缩甚至空(PHP生成)302redirect响应,添加一个20字节的响应主体。 现代的浏览器可以这样,但IE6似乎随机窒息了20个字节。

有没有办法configurationmod_deflate来忽略空的响应(或至less200响应)?

注意:我知道我可以禁用通过SetEnvIfNoCase和BrowserMatch放气,但我真的想禁用它只是为了什么是错的:压缩空响应。

我不认为apache的302响应体是空的,而是有一些关于响应被移动的基本信息。 因此,mod_deflate只是在做它的工作。

用telnet或netcat检查它 – 这里是一个netcat的例子:

echo -e "GET / HTTP/1.1\nHost: myhost.com\n\n" | nc myhost.com 80

如果你想改变它,你可以使用ErrorDocument来告诉Apache为你的自定义文件提供302个响应。 你的文件需要足够聪明才能读取适当的环境variables来完成redirect本身,但是你可以把主体留空 – 或者更好地设置一个mod_deflate不匹配的不同Content-Type头。