我遇到IIS7的静态压缩问题。我已经阅读了其他一些帖子,而且我没有选择。这就是我所拥有的:
在applicationHost.config中,我已经设置了:
<httpCompression directory="%SystemDrive%\inetpub\temp\IIS Temporary Compressed Files" staticCompressionDisableCpuUsage="100">
<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" staticCompressionLevel="9" />
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/x-javascript" enabled="true" />
<add mimeType="*/*" enabled="true" />
</staticTypes>
</httpCompression>
我的网站启用了“启用静态压缩”复选框。
当我加载网站时,我收到一个很大的未压缩文件。如果我查看请求标头,我会看到:
Accept-Encoding:gzip,deflate
但是,在回复中,我得到了:
内容类型:application / x-javascript
Last-Modified:Fri,2009年7月10日01:13:41 GMT
Accept-Ranges:bytes
Etag:“3be6da9fb0ca1:0”
服务器:Microsoft-IIS / 7.0
X-Powered-By:UrlRewriter.NET 2.0.0,ASP.NET
日期:2009年7月10日星期五03:39:35 GMT
内容长度:81515
任何人都有任何想法我在这里做错了吗?
另外,FWIW,我正在使用Integrated,而不是“Classic”模式。
更新:我得到了它的工作,但我不确定它为什么现在有效。我所做的只是为网站启用动态压缩,一切都开始工作了。有人有什么想法吗?
答案 0 :(得分:1)
我遇到了同样的问题,我相信这是因为我们正在使用UrlRewriter.NET。启用它时,所有文件请求都通过处理程序进行路由,以确定它们是否应该被重写。这会将css或js文件更改为动态请求而不是静态,因此在检查动态内容压缩框之前,GZip压缩似乎在IIS7中不起作用。无论如何,那是我的理论......
答案 1 :(得分:0)
我得到了它的工作,但我不确定它为什么现在有效。我所做的只是为网站启用动态压缩,一切都开始工作了。如果有人可以给我一个为什么这个有效的解释,我会给你答案。
答案 2 :(得分:-2)
我在IIS7压缩方面不是很好,但我想建议您查看提供全面压缩功能的Helicon Ape mod-gzip模块。关于如何启用和使用Helicon Ape mod-gzip的指南是here。