我正在为我的网站上的CSS和JS文件实现Gzip压缩,只需要仔细检查一下。
每个请求都压缩文件吗?或者它是从Temporary文件夹中收集和发送的(如果文件存在)?我只是想确保我的文件不会在每次请求时被压缩。
此外,这是默认行为还是需要一些额外的配置?
最后,在路径中使用哈希标记(通知浏览器文件已更改)和静态文件压缩时,是否需要担心或配置?或者它应该没有问题。
编辑:我只是使用静态压缩
非常感谢
答案 0 :(得分:1)
IIS 6支持动态和静态压缩。
答案 1 :(得分:1)
“然后将新压缩的文件存储在压缩目录中,并直接从压缩目录中为该文件的后续请求提供服务。换句话说,除非压缩版本的压缩版本,否则将文件的未压缩版本返回给客户端。该文件已存在于压缩目录中。“*
答案 2 :(得分:1)
为了充分利用IIS压缩,您需要在配置数据库文件中添加一些额外的位。
找到IIsCompressionScheme并对元基本文件进行以下编辑
<IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/deflate"
HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
HcCreateFlags="0"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="10"
HcFileExtensions="htm
html
css
js
txt
xml"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp
dll
aspx
axd
ashx
asbx
asmx
swf
asmx
exe"
>
</IIsCompressionScheme>
<IIsCompressionScheme Location ="/LM/W3SVC/Filters/Compression/gzip"
HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"
HcCreateFlags="1"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="10"
HcFileExtensions="htm
html
js
css
txt
xml"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp
dll
aspx
axd
ashx
asbx
asmx
swf
asmx
exe"
>
</IIsCompressionScheme>
使用像YSlow或Firebug这样的FF插件完成从您的站点测试页面,使用Firebug,您可以检查Net选项卡中的每个元素,并检查是否正确的压缩应用于正确的文件类型。
这里有一篇很棒的文章,其中有http://www.codinghorror.com/blog/2004/08/http-compression-and-iis-6-0.html