Browsed by
Tag: IIS6

启用IIS Gzip 页面压缩技术 加速网页的浏览速度

启用IIS Gzip 页面压缩技术 加速网页的浏览速度

启用IIS Gzip 页面压缩技术 加速网页的浏览速度

启用Gzip压缩是在Web服务器和浏览器间传输压缩文本内容的方法。
Gzip压缩采用通用的压缩算法压缩HTML、JavaScript、CSS等静态文件和asp、aspx、php、jsp等动态文件。
压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。
当然,同时也会增加一点点服务器的负担。
通过Windows2003系统设置的方式启用Gzip的突出优点就是效率较高,所以我们直接设置IIS让其支持Gzip压缩。

启用Gzip 压缩步骤

单击“开始”—“管理工具”—“Internet 信息服务(IIS)管理器”,打开IIS管理器;

在IIS管理器中双击本地计算机,右侧显示计算机中IIS列表,在“网站”上右键选择属性;

打开网站属性界面;

单击“服务”标签,选中“压缩应用程序文件”和“压缩静态文件”,同时根据情况设置临时目录的最大容量,初期可以限制为1G左右;

返回Internet信息服务(IIS)管理器,右击“Web服务扩展”,弹出Web服务扩展菜单;
选择“增加一个新的Web服务扩展(A)”;

在“新建Web服务扩展”框中输入扩展名“HTTPComPRession”,添加“要求的文件”为C:\WINDOWS\system32\inetsrv\gzip.dll,其中 Windows系统目录根据您的安装可能有所不同,选中“设置扩展状态为允许”;

使用文本编辑器打开C:\Windows\System32\inetsrv\MetaBase.xml(建议先备份),在该文件中搜索HcScriptFileExtensions,设置进行压缩的文件后缀名,系统默认的是asp、dll和exe,根据格式增加aspx、php、jsp等,再搜索HcFileExtensions,增加shtm、shtml、js、css、swf、mid、xml、mp3等静态文件格式;

在运行中输入“net stop iisadmin /y”停止IIS服务,运行完成后保存Metabase.xml;

在运行中输入“iisreset”重启IIS服务;

设置完成后,可以打开最知名的验证网站来验证,网址是http://www.pipeboost.com,
找到验证窗口Real-Time Acceleration Report,输入网址,单击“Analyze Url”按钮进行验证;

执行验证完成,如果Document Status的状态为ComPRessed,就说明压缩成功了。
 

启用IIS6的Gzip压缩功能 加快网页打开速度

启用IIS6的Gzip压缩功能 加快网页打开速度

网页Gzip压缩的优势是很明显的,第一减小了服务器的带宽,第二提高用户打开网页速度。
现代的浏览器IE6和Firefox都支持客户端Gzip,也就是说,在服务器上的网页,传输之前,先使用Gzip压缩再传输给客户端,客户端接收之后由浏览器解压显示,这样虽然稍微占用了一些服务器和客户端的CPU,但是换来的是更高的带宽利用率。对于纯文本来讲,压缩率是相当可观的。如果每个用户节约50%的带宽,那么你租用来的那点带宽就可以服务多一倍的客户了。
  IIS6已经内建了Gzip压缩的支持,可惜,没有设置更好的管理界面。所以要打开这个选项,还要费些功夫。
  首先,如果你需要压缩静态文件(HTML),需要在硬盘上建一个目录,并给它“IUSR_机器名”这个用户的写权限。如果压缩动态文件(PHP,asp,aspx)就不需要了,因为它的页面是每次都动态生成的,压缩完就放弃。然后在IIS管理器中,“网站”上面右键-属性,不是下面的某个站点,而是整个网站。进入“服务”标签,选上启用动态内容压缩,静态内容压缩。

  然后选中网站下面那个服务器扩展,新建一个服务器扩展。名字无所谓,下面的添加文件的路径是:
  c:\windows\system32\inetsrv\gzip.dll,然后启用这个扩展。

  还没完呢,我们还需要修改一个配置文件,修改之前请先停止 IIS 服务,打开 C:\Windows\System32\inetsrv\MetaBase.xml,这个文件很大,找到下面一段信息:

<IIsCompressionScheme	Location ="/LM/W3SVC/Filters/Compression/gzip"		HcCompressionDll="%windir%\system32\inetsrv\gzip.dll"		HcCreateFlags="1"		HcDoDynamicCompression="TRUE"		HcDoOnDemandCompression="TRUE"		HcDoStaticCompression="TRUE"		HcDynamicCompressionLevel="0"		HcFileExtensions="htm			html			txt"		HcOnDemandCompLevel="10"		HcPriority="1"		HcScriptFileExtensions="asp			dll			exe"	></IIsCompressionScheme>

  增加一些要进行压缩的文件后缀,其中 HcFileExtensions 是静态文件的扩展名,增加 js 和 css 等;HcScriptFileExtensions 为动态文件的扩展名,增加 aspx,HcDynamicCompressionLevel改成9,(0-10,9是性价比最高的一个)。
  然后需要重启一下IIS服务,就可以体会到压缩后的速度了。不过通常可能不会有太明显的感觉,可以用http://www.port80software.com/tools/compresscheck.asp这个页面来检查你的网页是否压缩过了,以及压缩比和加快的速度。整个过程对CPU的占用基本上感觉不出来。