如何启用IIS7来gzip静态文件,如js和css,如何在发送到客户端之前测试IIS7是否真正gziping它们?
如何查看IIS压缩是否正在使用Fiddler?我有一个页面,当通过Port80Software或GID Network的工具查看时,它似乎是遇到压缩的.
但是,当我在Fiddler中观看调用时,我在请求标头中看到'Accept-Encoding:gzip,deflate',但我没有在响应头中看到'Content-Encoding:gzip'或'deflate'.此外,在Transformer部分中,选择了"No Compression".
谢谢!
克里斯
是否可以使用appcmd来更改allowDefinition的值?具体来说,我尝试在应用程序级别启用对httpCompression模块的更改.
通过手动更改以下行来修改applicationHost.config:
<section name="httpCompression" allowDefinition="AppHostOnly" overrideModeDefault="Deny" />
Run Code Online (Sandbox Code Playgroud)
至
<section name="httpCompression" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />
Run Code Online (Sandbox Code Playgroud)
然后允许我执行以下appcmd命令:
appcmd set config "website name" /section:httpCompression /noCompressionForProxies:false
appcmd set config "website name" /section:httpCompression /noCompressionForHttp10:false
Run Code Online (Sandbox Code Playgroud)
但是,我需要一个不依赖于手动编辑applicationHost.config的解决方案
我有以下web.config:
<urlCompression doStaticCompression="true" />
<httpCompression>
<dynamicTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</dynamicTypes>
<staticTypes>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
<add mimeType="*/*" enabled="false" />
</staticTypes>
</httpCompression>
Run Code Online (Sandbox Code Playgroud)
可能计划不允许动态压缩
问题是,当我请求css或js时,IIS用GZIP响应并添加vary:accept-encoding有时和其他时间不压缩CSS也没有JS,我找不到它是某种随机的模式.
我总是尝试CTRL F5,即使你访问www.mysite.com css和js是随机压缩的.
NB:托管在NetworkSolution上.
我的配置或IIS出了什么问题.
谢谢