如何给Windows2003+IIS6.0服务器开启GZIP压缩

服务器技术    2013-03-05 16:51  

  之前我曾经写过一篇文章,来讲述给Linux中Apache服务器或者虚拟主机的WordPress开启GZIP压缩,而开启压缩后的实际效果大家也可以通过文章中的图片看到。不过呢,虽然Linux服务器更值得推荐,而Windows服务器平台也正在想2008及2012普及,但是使用Windows2003系统+IIS6.0服务器的站长其实有很多,所以如何在这样的环境中开启GZIP压缩,还是值得一谈的。

  第一步,打开Internet信息服务(IIS)管理器,右击“网站”-》“属性”,进入“服务”选项,之后在“HTTP压缩”的大框中把“压缩应用程序文件”和“压缩静态文件”两个都选上,而“临时目录”和“临时目录的最大限制”直接使用默认值即可。

IIS6.0开启GZIP第一步

  第二步,还是在Internet信息服务(IIS)管理器中,右击“Web服务扩展”选项,选择“增加一个新的Web服务扩展”,在“新建Web服务扩展”框内输入扩展名为“HTTP Compression”,“要求的文件”添加路径为C:\WINDOWS\system32\inetsrv\gzip.dll,一般来说绝大多数Windows2003服务器都应该是这个路径,如果有很特别的,就请根据自己的情况来选择gzip.dll的位置吧,记得把“设置扩展状态为允许”也勾选上,然后点击确定。

IIS6.0开启GZIP第二步

  第三步,来到关键的一步了。先将IIS6.0服务器停止,请在“运行”中输入“cmd”,进入命令行,然后输入“net stop iisadmin”来停止IIS服务,再备份一下C:\Windows\System32\inetsrv\MetaBase.xml这个文件(在修改服务器任何一个配置文件之前都应该备份,这是个人站长必备素质),之后用记事本打开该文件,进行相关设置的更改。

  需要更改的有两个地方,一个是Location ="/LM/W3SVC/Filters/Compression/deflate"的地方,另一个则是Location ="/LM/W3SVC/Filters/Compression/gzip",将这两个地方修改后就可以打开GZIP了。两个地方的内容更改完全一致,所以只说一遍就可以了。

  将HcDoDynamicCompression设置为“TRUE”,这个是用来压缩动态文件的,当然如果你不打算压缩动态文件,保持“FALSE”状态也可以,而HcScriptFileExtensions中是需要压缩的动态文件后缀,如asp、php、aspx等。

  将HcDoStaticCompression和HcDoOnDemandCompression设置为“TRUE”,这是用来开启压缩静态文件的,没有理由不开启。在HcFileExtensions中添加需要压缩的静态文件后缀,如html、css、xml等。

  HcDynamicCompressionLevel和HcOnDemandCompLevel这两个属性,表示的是GZIP的压缩率,可以填写0-10之间的数字,默认为0,通常来说建议设置为9,这是最具有性价比的选择。(图片中把php加到静态文件里面了,大家就无视吧,这是很久以前配置的,反正网站是静态的,php压缩不压缩无所谓)

IIS6.0开启GZIP第三步

  修改完毕后,再把IIS服务器打开,依然在命令行中,输入“iisreset”命令。这样,GZIP压缩就打开了,可以用站长工具对自己的页面进行检查,看看效果如何。

  需要注意的是,在修改MetaBase.xml文件时,可能会出现无法保存的情况,系统会提示“文件正在使用,无法保存”,要解决这个问题,打开IIS,右击“本地计算机”-》“属性”,在“Internet信息服务”中勾选“允许直接编辑配置数据库”,确定后,就可以顺利的编辑MetaBase.xml文件了。

允许编辑配置数据库

  在开启了GZIP后,网站打开速度会有较为明显的提升,而且也能节省不少的带宽和流量,带来的CPU资源消耗就无所谓了。也曾经有人担心搜索引擎对GZIP压缩的页面爬行有问题,事实证明完全不存在问题,只要是用户的浏览器可以正常访问的页面,搜索引擎爬行起来没有问题。

在线留言

我要留言