ASP网页编程之IIS6和IIS7对静态文件gzip紧缩体例
由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。</p>先申明下为何要写这篇文章,和纠结于这个“小成绩”。起首开启静态文件的gzip紧缩十分有益用进步网站的会见速率,而且无效削减蜘蛛匍匐静态页面的time-taken,同时也不会像开启静态文件紧缩一样大概会对百度蜘蛛形成200064的抓取成绩,以是一方面,网站速率快有益于进步用户体验,另外一方面,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>
<serverRuntimeenabled="true"
frequentHitThreshold="1"
frequentHitTimePeriod="00:10:00"/>
</system.webServer>
第二种办法是翻开%windir%system32inetsrvappcmd.exe,然后再命令行界面中输出以下命令字符串,然后回车
setconfig-section:system.webServer/serverRuntime-frequentHitThreshold:1
微软官方倡议对照不保守的举措是不要调低frequentHitThreshold而是进步frequentHitTimePeriod,如许对服务器功能更适中。这里要提到的是,关于具有VPS的伴侣们,倡议能够手动设置,而假造主机用户能不克不及设置就得看服务商了,我就很喜剧的改不了。人人碰运气吧
ASP脚本是采用明文(plaintext)方式来编写的。 如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。 没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。 ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。 因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。 不能只是将它停留在纸上谈兵的程度上。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
页:
[1]