Windows 2003中启动IIS6的GZIP压缩网页传输的方法
IIS开启gzip
1. HTTP压缩概述
HTTP压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或CSS文件。
2. HTTP压缩工作原理
Web服务器处理HTTP压缩的工作原理如下:
- Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩;
- 如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名;
- 如果请求文件是HTML、CSS等静态文件,Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;
- 如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件;
- 如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件;
- 如果请求文件是ASPX等动态文件,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。
3. IIS 6.0中配置HTTP压缩的步骤
IIS 6.0中配置HTTP压缩的步骤如下:
- 打开Internet信息服务(IIS)管理器,右击"网站"->"属性",选择"服务"。在"HTTP压缩"框中选中"压缩应用程序文件"和"压缩静态文件",按需要设置"临时目录"和"临时目录的最大限制";
- 在Internet 信息服务(IIS)管理器,右击"Web服务扩展"->"增加一个新的Web服务扩展...",在"新建Web服务扩展"框中输入扩展名"HTTP Compression",添加"要求的文件"为C:\WINDOWS\system32\inetsrv\gzip.dll,其中Windows系统目录根据您的安装可能有所不同,选中"设置扩展状态为允许";
- 使用文本编辑器打开C:\Windows\System32\inetsrv\MetaBase.xml(建议先备份), 找到Location ="/LM/W3SVC/Filters/Compression/gzip",如果需要压缩动态文件,则将 HcDoDynamicCompression设置为"TRUE",并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名,如aspx;如果需要压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置为 "TRUE",并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如xml、css等; HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数字越小压缩率越低;
- 编辑完毕后保存MetaBase.xml文件;如果文件无法保存,则可能IIS正在使用该文件。打开"开始"->"管理工具"->"服务",停止"IIS Admin Service"后,即可保存;
- 最后,重新启动IIS。可以到HTTP压缩测试网站验证结果。
以下是几个gzip页面压缩率的在线检测网站:
1、http://www.whatsmyip.org/mod_gzip_test/
2、http://www.gidnetwork.com/tools/gzip-test.php
3、ttp://www.whatsmyip.org/mod_gzip_test/
4、http://www.gidnetwork.com/tools/gzip-test.php
上文中所有操作完毕以后仍然开启GZIP的朋友打开IIS管理器——》网站——》属性——》切换到“服务”栏——》HTTP压缩部分。
动态和静态压缩分别参照下文中的操作说明设置即可完成。
对于页面内容过大的网站效果不错。如果服务器CPU资源紧张最好还是不要使用。
下面附上更详细的图文教程:
步骤
1. 在 "IIS 管理器" 中,打开 "网站 > 属性" 对话框,切换到 "服务" 页卡,选中两个压缩选项。
2. 新增一个服务扩展,路径为 "%windir%\System32\inetsrv\gzip.dll"。添加完成后,允许该扩展使用。
3. 在 "管理工具 > 服务" 中,停止 "IIS Admin Service"。
4. 用记事本打开 "%windir%\system32\inetsrv\MetaBase.xml",找到 "IIsCompressionScheme",按下述方法修改、保存。(建议修改前先做备份)
如果需要压缩动态文件,则将 HcDoDynamicCompression设置为"TRUE",并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名,如aspx (由于我要优化的系统中,做了 html -> aspx 的 URL Rewrite,所以将 html、htm 也加入了)。
如果需要压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置为 "TRUE",并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如xml、css等。
HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数字(0~9)越小压缩率越低。
5. 重启服务器。
测试
我们用 HttpWatch Professional 4.1 看看启用 GZip 后的效果。
- 最新评论