IIS6以及IIS7对静态文件gzip压缩方式的区别

admin3年前网站建设43

先说明下为什么要写这篇文章,以及纠结于这个“小问题”。首先开启静态文件的gzip压缩非常有利用提高网站的访问速度,并且有效减少蜘蛛爬行静态页面的time-taken,同时也不会像开启动态文件压缩一样可能会对百度蜘蛛造成200 0 64的抓取问题,所以一方面,网站速度快有利于提高用户体验,另一方面,google管理员博客在今年已经明确表示网站速度是排名的因素之一,而对于拿国外主机做百度中文站优化,time-taken不理想会导致百度蜘蛛内页抓的少,国平之前在自己博客文章网页加载速度是如何影响SEO效果的中也提到过,在固定的一段时间内蜘蛛抓取网站的总时间是固定的,那么抓取速度上去了,抓取页面数就会更多,反之则少。

好吧,开始正文,在上篇文章《蜘蛛抓取静态页面与触发gzip压缩的实验结果》中的问题二,我提出了gzip静态页面的压缩版本在服务器上保存方式的猜测,在困惑了许久之后,发现导致两个主机返回gzip结果不同的最终原因是iis版本而不是我猜测的缓存文件夹设置过小

事实上,iis7比iis6在静态压缩上有了较大的更新,在IIS6中,静态压缩是在一个不同的线程上进行的,所以在收到一个HTTP请求后,第一个发送给浏览器的HTML版本是没有压缩过的,而同时IIS6会开始使用一个不同的线程对这个文件进行压缩并且将这个压缩后的版本长期保存在压缩文件的缓存文件夹内。而在以前,也就是IIS6服务器上,在压缩完成之后凡是对该被压缩版本的静态文件的HTTP请求,IIS6都会直接从缓存文件夹中直接调用压缩后的版本并返回给浏览器。

但是在IIS7中,压缩是在主线程上进行的,而且为了节省压缩的成本,IIS7不对所有的HTTP请求而只对哪些经常会被用户访问的静态文件进行压缩版本的长期保存,这也就是为什么我在之前第一次访问没有压缩,短期内再次访问返回的是压缩版本,但是再过几分钟访问返回的又是未压缩版本的原因。这里我们可以理解为IIS7并没有将压缩版本实际保存到缓存文件夹中,而是只在服务器内存中做了保存,或者是临时将压缩版本保存到缓存文件夹中,一会之后进行删除。

而IIS7定义什么文件是经常访问的符合压缩标准的方法是system.webServer/serverRuntime中的以下两个属性,frequentHitThreshold和frequentHitTimePeriod 。如果IIS在frequentHitTimePeriod时间段内接收到了对某个静态文件的超过frequentHitThreshold闸值次数的访问,那么IIS7就会像IIS6一样压缩该静态文件并且将这个压缩后的版本长期保存在压缩文件的缓存文件夹内。如果用户访问网站某文件时,已经在缓存文件夹中存在该文件的缓存版本,那么IIS7是不会再判断frequentHitThreshhold这个逻辑而是直接返回压缩版本给浏览器。

这种设置的确很蛋疼,但是微软官方给出的答复是这样有利用提高服务器性能。。。那么如果想要让IIS7能够向IIS6一样做压缩的话,有两种解决方法,当然都是修改frequentHitThreshold和frequentHitTimePeriod这两个值:

第一种是在web.config中添加以下内容,将frequentHitThreshold调至1,将frequentHitTimePeriod调制10分钟

    <system.webServer> <serverRuntime enabled="true" frequentHitThreshold="1" frequentHitTimePeriod="00:10:00"/> </system.webServer> 

第二种方法是打开%windir%system32inetsrvppcmd.exe,然后再命令行界面中输入以下命令字符串,然后回车

set config -section:system.webServer/serverRuntime -frequentHitThreshold:1

微软官方建议比较不激进的办法是不要调低frequentHitThreshold而是提高frequentHitTimePeriod,这样对服务器性能更适中。这里要提到的是,对于拥有VPS的朋友们,建议可以手动设置,而虚拟主机用户能不能设置就得看服务商了,我就很悲剧的改不了。大家试试看吧

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

什么是营销型网站?如何辨别营销型网站是否有效果?

什么是营销型网站?如何辨别营销型网站是否有效果?首先我们来认识一下什么是营销型网站。营销型网站从通俗的概念上来说是一个具有营销能力的网站,如何能够让一个网站具有营销能力?那么设计的网站一定要像顶级销售...

企业做网站时为何要同步制作移动端wap手机网站呢?

在做网站时一定要进行同步制作使用手机网站,为什么呢?我相信有的中小企业还是不明白为什么?都是没有听说过手机站,但手机站和PC端的差异并不需要了解。我们之所以关注 WAP 移动,是因为人们正在改变他们的...

了解搜索引擎来进行SEO

  搜索引擎的工作的过程非常复杂,而简单的讲搜索引擎的工过程大体可以分成三个阶段。爬行和抓取:搜索引擎蜘蛛通过跟踪链接访问页面,获取页面HTML代码存入数据库。预处理:搜索赢球对抓取来的页面数据文字进...

建网站与网站维护都有哪些流程与措施?

随着网络高速发展,使得很多企业管理者意识到,未来企业营销重点应该放在线上,线下辅助线上,让企业快速的在激烈市场竞争中站稳脚跟。虽然说企业管理者们意识到这个事情,但是想要做好网络营销,还需要制作一个属于...

网站制作有几种版式?风格推荐!

对于网站设计师来说,了解各种设计标准及风格对于我们的工作是有很大帮助的,既可以解决各类用户的需求,还能提高自己审美,一般网站设计有几种版式?下面网站制作公司为大家推荐几种常用风格。 网站设计...

网站备案新增短信验证流程,各个省市陆续开通

根据工信部《关于扩大“工业和信息化部ICPIP 地址域名信息备案管理系统”短信息核验试点范围的通知》(工信管函[2018]1590号)要求,本次试点工作分两批次新增15个短信核...