IIS 配置GZIP

前段时间学习Steve的名著《高性能网站建设指南》,却一直没有时间去实践其中的压缩组件。今天再次翻看,发现其中只有介绍Apache服务器的内容,要知道并不是所有网站都运行在Apache之中啊,实际上大部分中小网站的服务器环境都还是IIS。

网上搜索了一番,了解了IIS下的Gzip配置,还是比较简单的。

简单来说,IIS6集成了Gzip,只不过需要手动操作而已。写下大概步骤,留作备忘——

1、在服务器中新建一个文件夹,名称任意,给本机用户添加写入权限。

2、进入IIS管理器,IIS管理器>网站 右键进入“属性”面板,切换到“服务”选项卡,勾选HTTP压缩中两项,如果仅仅想压缩静态文件,那么第一项就算了。临时目录就是刚才新建的那个文件夹。

3、确认后进入IIS管理器>Web服务扩展,点击“添加一个新的Web服务扩展”,在弹出的面板中首先输入扩展名,名称任意;然后在“要求的文件”中添加文件,其实就是输入gzip.dll所在的路径。如果不是特立独行的服务器,那么这个位置基本上就是“C:WINDOWSsystem32inetsrvgzip.dll”,确认后记得将“设置扩展状态为允许”勾选。

 

4、进入C:WINDOWSsystem32inetsrv这个目录下,找到一个叫MetaBase.xml的文件,直接修改保存是不行的,因为IIS服务正在使用该文件。强烈建议先备份该文件,再在一个副本上修改。用文本编辑器打开副本,用查找功能找到“IIsCompressionScheme”,共有3处,都在一起,分别是deflate、gzip和Parameters,deflate也是一种压缩格式,不过性能上不如gzip。需要修改的是deflate和gzip这两段,参数基本一样,都要修改。

HcDynamicCompressionLevel是用来设置压缩率,默认是0,最高是10。低压缩级别生成稍大一些的压缩文件,但对 CPU 和内存资源的总体影响较小。高压缩级别通常会生成较小的压缩文件,但会占用较多的 CPU 时间和内存。有人说设置成9性价比最高。

HcFileExtensions是用来设置压缩的静态文件扩展名,默认是htm、html、txt,根据网站的自身情况添加扩展名,最基本的是js、css。添加时注意原有的换行格式。

HcScriptFileExtensions是用来设置压缩的动态文件扩展名,默认是asp、dll和exe,根据需要自行添加扩展名,无外乎aspx、php等。可以将这一项的默认删除留空,这样所有的动态响应都以压缩方式发送。另外,还将动态压缩 HcFileExtensions 中所有未指定的静态文件类型,并且因此不将它们放入缓存。同样地,必须将 HcDoDynamicCompression 设置为 true,以进行动态压缩。

5、把IIS服务停止,用刚才保存的副本替换原有的MetaBase.xml

6、重启IIS服务,如果一切正确,那么Gzip就启动了。

可以在这个地址检测Gzip的工作情况。

 

置文件在windows目录下的system32/inetsrv/metabase.xml

找到"/LM/W3SVC/Filters/Compression/deflate"和Location ="/LM/W3SVC/Filters/Compression/gzip"

两个配置段内均有HcDynamicCompressionLevel="5",请选择你认为合适的数值,这里我设置的是5.

如果要对动态网页进行压缩,则要修改如下配置项

HcScriptFileExtensions="asp
    dll
    exe"
将你要压缩的文件的扩展名田间进去即可。

特别提示:这种压缩优化流量的方法,对于文本文件比较有效,大约能压缩50%(我一个200k左右的页面包含js和css压缩后118k左右),图片则效果很差。另外压缩比高对于服务器来说也会导致cpu负载过高,所以建议不要设置太高的压缩比。

修改配置文件时请暂停IIS服务,保存后重新启动服务。


 ---★ 本文转摘自『IT学习者』→ http://www.itlearner.com/article/4242

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值