不疯魔,不成活! --疯魔老杨(Crazy.LaoYang) http://www.inotes.cn/
分类: 系统运维
2008-06-22 21:27:42
我原来仅仅是从事数据通信工作的,后来转到互联网中网站相关的工作。目前公网的速度实在不能让人满意,做为网站的工作人员,个人认为任何为了在加速网站访问速度的努力都是有价值的。
其中的一个方法就是通过HTTP压缩技术来实现方法速度的加速,能过减少服务器和客户端之间的传输的数据量,显著的提高网站的访问性能。这无需客户端进行配置,压缩的过程在服务器到客户端之间是实时的,用户几乎是无感知的。
为什么要进行压缩?HTTP压缩技术可以将HTML文件压缩到原来大小的一半左右或者更小,在不影响网站实际工作流程、页面设计等情况下,服务器可以减少页面传送的大小,从面减少用户下载的时间,减少带宽,提高带宽利用率。
什么文件适合压缩?不是所有文件都适合使用HTTP压缩技术,其中已经压缩的JPG、GIF、PNG、WMV、FLV、SWF等文件等就不需要进行HTTP压缩,即使进行再次压缩也是无法得到显著的减少文件体积的效果的,有时可能会越压越大。对于网站中的文本内容类型的文件,如HTML、XML、CSS、RSS等就是需要我们进行压缩处理的,对于很格式的文件最大可压缩到原来大小的三分之一。
这里先对IIS6.0的HTTP压缩进行配置测试。IIS6本身就支持gzip压缩,IIS5及以前的版本是找一些第三方组件(如httpzip)来处理的。
IIS6压缩配置:
1) 打开 Internet 信息服务(IIS)管理器,右击"网站"->"属性",选择"服务"。在 "HTTP压缩" 框中选中 "压缩应用程序文件" 和 "压缩静态文件",按需要设置 "临时目录" 和 "临时目录的最大限制"。如下图:
2)接下来配置 gzip 组件,在 Internet 信息服务(IIS)管理器,点击 "Web 服务扩展"->"增加一个新的 Web 服务扩展...",在 "新建 Web 服务扩展" 框中输入扩展名 "HTTP Compression",添加 "要求的文件" 为 C:\WINDOWS\system32\inetsrv\gzip.dll,选中 "设置扩展状态为允许"。如下图:
3) 修改配置文件,修改之前请先停止 IIS 服务,打开 C:\Windows\System32\inetsrv\MetaBase.xml,找到下面的内容:
HcCreateFlags="1"
HcDoDynamicCompression="TRUE"
HcDoOnDemandCompression="TRUE"
HcDoStaticCompression="TRUE"
HcDynamicCompressionLevel="0"
HcFileExtensions="htm html txt"
HcOnDemandCompLevel="10"
HcPriority="1"
HcScriptFileExtensions="asp dll exe"
注:
HcDoDynamicCompression="TRUE";打开动态文件压缩功能。
HcScriptFileExtensions="asp dll exe";为可压缩动态文件的扩展名。
HcDoStaticCompression="TRUE";打开静态文件压缩功能。
HcDoOnDemandCompression="TRUE";静态文件压缩功能。
HcFileExtensions="htm html txt";为可压缩静态文件的扩展名。
HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数字越小压缩率越低;
4)保存后启动 IIS 即可生效。
IIS6压缩效果测试:
待续。。。。