我正在为我的网站上的 CSS 和 JS 文件实施 Gzip 压缩,只需要仔细检查一些内容。
文件是否在每个请求上都被压缩?还是从临时文件夹收集和发送(如果文件存在)?我只是想确保我的文件不会在每次请求时都被压缩。
另外,这是默认行为还是我需要一些额外的配置?
最后,在路径中使用哈希标签(通知浏览器文件已更改)和静态文件压缩时,我是否需要担心或配置一些东西?或者它应该没有问题。
编辑:我只是使用静态压缩
非常感谢
我正在为我的网站上的 CSS 和 JS 文件实施 Gzip 压缩,只需要仔细检查一些内容。
文件是否在每个请求上都被压缩?还是从临时文件夹收集和发送(如果文件存在)?我只是想确保我的文件不会在每次请求时都被压缩。
另外,这是默认行为还是我需要一些额外的配置?
最后,在路径中使用哈希标签(通知浏览器文件已更改)和静态文件压缩时,我是否需要担心或配置一些东西?或者它应该没有问题。
编辑:我只是使用静态压缩
非常感谢
“然后将新压缩的文件存储在压缩目录中,然后直接从压缩目录中处理对该文件的后续请求。换句话说,除非该文件的压缩版本已经存在,否则该文件的未压缩版本将返回给客户端存在于压缩目录中。"*
为了充分利用 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