当试图找出静态文件压缩为什么不能在我们的IIS服务器上工作的时候,这个错误就会以“NO_COMPRESSION_10”的forms出现,这意味着 :
服务器未configuration为压缩1.0请求
看着Fiddler中的请求,我可以看到我正在请求HTTP 1.1,但是一切都以HTTP 1.0的forms发回:
请求(来自chrome,通过Fiddler捕获):
GET /css/reset.css HTTP/1.1 Host: [-----].com Connection: keep-alive Cache-Control: max-age=0 If-Modified-Since: Tue, 16 Oct 2012 15:04:34 GMT User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11 Accept: text/css,*/*;q=0.1 Referer: http://[-----].com/ Accept-Encoding: gzip,deflate,sdch Accept-Language: en-GB,en;q=0.8,en-US;q=0.6 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
来自IIS的响应:
HTTP/1.0 200 OK Cache-Control: no-cache, no-store Pragma: no-cache Content-Type: text/html; charset=utf-8 Expires: -1 Server: Microsoft-IIS/7.5 X-AspNet-Version: 4.0.30319 X-Powered-By: ASP.NET Date: Tue, 11 Dec 2012 11:57:03 GMT Connection: close Content-Length: 108837
其他具有相同主机的服务器,我使用HTTP/1.1响应。
我如何说服IIS响应HTTP / 1.1而不是HTTP / 1.0?
编辑添加:
深入挖掘,我可以看到来自服务器的一些响应确实被压缩,所以我想我正在试图解决为什么从我们的办公室与这个特定的服务器交谈似乎导致它看到1.0请求,而其他服务器在同一个地方不?
这是因为旧的代理服务器将http 1.1转换为http 1.0。 禁用NO_COMPRESSION_10。 请参阅需要有关IIS7 web.config压缩设置的帮助