




已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一.摘要本文总结了如何为使用IIS托管的网站启用Gzip压缩, 从而减少网页网络传输大小, 提高用户显示页面的速度.二.前言.本文的知识点是从互联网收集整理, 主要来源于中文wiki. 使用YSlow检测网站启用了哪些优化时, Gzip是十分关键的一项. 启动Gip压缩将立竿见影的减少页面的网络传输大小.三.HTTP压缩概述HTTP 压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或CSS文件。压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。当然,同时也会增加一点点服务器的负担。Gzip是比较常见的一种HTTP 压缩算法。四.HTTP压缩工作原理Web服务器处理HTTP压缩的工作原理如下:1.Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩; 在用户浏览器发送请求的HTTP头中, 带有Accept-Encoding: gzip, deflate参数则表明支持gzip和deflate两种压缩算法.2.如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名; 静态文件和动态文件后缀启动要所都需要在MetaBase.xml中设置. 静态文件需要设置: HcFileExtensions Metabase Property (单击跳转到MSDN说明) 动态文件需要设置: HcScriptFileExtensions Metabase Property (单击跳转到MSDN说明)3.如果请求文件是HTML、CSS等静态文件并且文件后缀启用了压缩,则Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;4.如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件;5.如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件;6.如果请求文件是ASPX等动态文件并且文件后缀启用了压缩,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。五. 在IIS中启用HTTP压缩IIS默认并不支持HTTP压缩,需要进行简单的配置1.打开Internet信息服务(IIS)管理器,右击网站-属性,选择服务。在HTTP压缩框中选中压缩应用程序文件和压缩静态文件,按需要设置临时目录和临时目录的最大限制; 2.提醒: 经试验此步骤在本人机器上没有作用, 可以忽略. 在 Internet信息服务(IIS)管理器,右击Web服务扩展-增加一个新的Web服务扩展.,在新建Web服务扩展框中输入扩展名HTTP Compression,添加要求的文件为C:WINDOWSsystem32inetsrvgzip.dll,其中Windows系统目录根据您的安装可能有所不同,选中设置扩展状态为允许; 3.使用文本编辑器打开C:WindowsSystem32inetsrvMetaBase.xml(建议先备份), 找到Location =/LM/W3SVC/Filters/Compression/gzip用于设置gzip压缩, 找到Location =/LM/W3SVC/Filters/Compression/deflate用于设置deflate压缩. 上面两个节点紧挨着.并且设置的属性相同. 如果需要压缩动态文件,则将HcDoDynamicCompression设置为TRUE,并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名,如aspx;如果需要压缩静态文件,则将HcDoStaticCompression和 HcDoOnDemandCompression设置为TRUE,并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如 xml、css等;HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数值在0-10, 默认为0. HcDynamicCompressionLevel属性说明:HcDynamicCompressionLevel Metabase Property HcOnDemandCompLevel 属性说明:HcOnDemandCompLevel Metabase Property 说明: 这两个属性值一般推荐设置为9, 具有最佳性价比.但是在我的window server 2003上, 压缩率无论如何设置, jQuery和jQuery UI两个文件(58k/188k)压缩后的大小一直相同.(20k/45k). 下面是我的实例:Xml代码 1. 22. 23. 44. .csharpcode, .csharpcode pre font-size: small; color: black; font-family: consolas, Courier New, courier, monospace; background-color: #ffffff; /*white-space: pre;*/ .csharpcode pre margin: 0em; .csharpcode .rem color: #008000; .csharpcode .kwrd color: #0000ff; .csharpcode .str color: #006080; .csharpcode .op color: #0000c0; .csharpcode .preproc color: #cc6633; .csharpcode .asp background-color: #ffff00; .csharpcode .html color: #800000; .csharpcode .attr color: #ff0000; .csharpcode .alt background-color: #f4f4f4; width: 100%; margin: 0em; .csharpcode .lnum color: #606060; 4.编辑完毕后保存MetaBase.xml文件;如果文件无法保存,则可能IIS正在使用该文件。打开开始-管理工具-服务,停止IIS Admin Service后,即可保存;5.最后,重新启动IIS。可以到HTTP压缩测试网站验证结果.以jQuery为例, 核心类库和UI类库原始大小分别是57k和188k,压缩后分别是20k和45k: 我们通过Http头中的: Content-Encoding:gzip 属性判断返回后的数据已经启用了gzip压缩: 使用YSlow检测, 当只启动静态文件压缩时, Gzip压缩评级为B: 当同时启动了动态文件压缩时, Gzip压缩评级为A: 六.要点总结1. 在修改MetaBase.xml文件时, 要停止IIS Admin Service服务. 否则无法保存.2.静态压缩和动态压缩率最好设置为9.3.上文的步骤2, 即使不添加Web服务扩展效果也是相同的.4.压缩率设置对js
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省上虞市2025年上半年事业单位公开遴选试题含答案分析
- 七年级下册英语人教版单词表2025
- 年度最美英音!英国女王2019年圣诞致辞 中英互译
- 河北省邢台县2025年上半年公开招聘城市协管员试题含答案分析
- 河北省清河县2025年上半年事业单位公开遴选试题含答案分析
- 河北省晋州市2025年上半年事业单位公开遴选试题含答案分析
- 2025年度事业单位新媒体运营专员短期雇佣合同
- 2025年城市夜景照明改造工程劳务分包合同
- 2025年度会员积分累积与消费权益保障合同协议下载
- 2025年新型商业街区租赁合作合同
- 2025秋外研新版三起点小学英语四年级上册教学计划
- 2025北师大版(2024)三年级上册数学教学计划
- 2025云南省腾冲市边防办招聘边境专职联防员(10人)笔试参考题库附答案解析
- 2025-2026学年人教版(2024)初中数学八年级上册教学计划及进度表
- 中小会计师所发展困境及对策
- 2025至2030中国微波器件行业市场调研分析及竞争形势与投资发展报告
- 2025年12123学法减分考试题库及答案
- 外伤出血急救课件
- 医院感染管理手卫生
- 医院就诊全流程指南
- 监督协议书模板
评论
0/150
提交评论