IIS动态压缩失败

5
我正在尝试使IIS 8.5上的动态压缩工作(特别是与JSON一起使用)。我正在使用Windows Server 2012、IIS 8.5和一个非常简单的ASP.NET MVC站点,以JSON的形式返回一个ActionResult。首先,我已经完成了所有通常的步骤,在服务器和站点级别启用了IIS中的动态压缩,并使用正确的MIME类型、频率等编辑了我的applicationHost.config文件。
我已经启用了FailedRequestTrace日志记录,奇怪的是,我的请求报告了成功的压缩,但Chrome/Fiddlr不同意:

enter image description here

在跟踪日志中的响应包含头部"Content-Encoding: gzip":

enter image description here

但是在Chrome/IE/Fiddlr中的响应并没有包含该标头,也没有进行压缩,看起来似乎有其他东西在干扰!请帮忙!
1个回答

6
如果服务器提供的响应被压缩(使用WireShark来确定),但是你在浏览器中看到的响应是未压缩的,很可能是因为你的杀毒软件在内容到达浏览器之前解压了它。请参考WireShark

1
谢谢回复!我已经用Wireshark测试过了,当响应到达我的机器时是压缩的。罪魁祸首确实是反病毒软件(具体来说是ESET Endpoint),启用了HTTP扫描,这导致了响应的解压缩。自从禁用了这个选项后,一切都正常了! :) - TerryOS
在尝试了数小时后,终于找到gzip压缩不起作用的原因,这篇文章救了我。非常感谢Matthew。 - Omar Himada
我确认这是我的情况(Eset端点防病毒软件)。禁用保护没有帮助 - 只有在我卸载它后gzip才出现。将检查哪个确切的设置会影响它。谢谢! - Nickmaovich

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接