我不完全确定这是否属于SO,但我不知道还能在哪里问。
当我检查我的网络应用程序的加载速度时,我注意到显然没有HTTP响应(无论什么类型 - html,css,js)是gzip / deflate压缩的。也就是说,任何请求中都没有“Content-Encoding:gzip”等响应标头,并且浏览器报告资源未被压缩。
以下是响应标头的示例(请注意缺少内容编码标头):
我还检查了服务器端。服务器正在运行Windows Server 2008 R2 / IIS 7.5。我使用Failed Request Tracing查找服务器发送的内容。资源似乎是压缩的:
此外,服务器似乎发送了正确的标题:
我的结论:必须是Windows 8谁在这里进行干预。显然它修改了HTTP响应。我想Windows 8正在接收压缩响应,对其进行解压缩,删除内容编码头,并将修改后的响应传递到管道中。
现在我的问题:
提前感谢您的回答。
此致 安德烈
更新: 我使用Wireshark来查看到达客户端的内容。正如我所料,资源被压缩,内容编码头仍然存在。下图显示了wireshark协议,右下角显示了Chrome收到的响应。
这证实了我的假设,即Windows 8正在介入。
答案 0 :(得分:9)
原来,罪魁祸首是我的防病毒软件Avast,更具体地说是集成的实时网络屏蔽。关闭它会导致响应再次在浏览器中显示为压缩。
有趣的是,Avast也在Windows 7计算机上运行,即使在我测试期间在适用的情况下进行压缩的那些机器响应。