首页 > 网站 > IIS > 正文

windows2008 iis7配置启用gzip压缩方法

2024-08-29 03:11:31
字体:
来源:转载
供稿:网友
这篇文章主要为大家详细介绍了windows2008 iis7配置启用gzip压缩方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

上面一讲361源码给大家介绍了《win2003 IIS6三步开启GZIP压缩功能教程》,想象顺便也就把 windows2008 iis7配置启用gzip压缩方法 的方法给大家介绍掉算了,省得部分小伙伴看以后又要问IIS7.0,IIS7.5的这么开启。

iis7开启GZIP非常方便和简单,比II6方便得太多太多。

一、在iis7上面选择需要开启gzip的网站,右侧点击“压缩”


图一:windows2008 iis7配置启用gzip压缩方法

二、在“启动动态内容压缩”和“启动静态内容压缩”前面打上钩钩,然后再点击右侧的应用即可保存。


图二:windows2008 iis7配置启用gzip压缩方法

完成。简单2步开启IIS7的GZIP压缩功能。

新增:

配置启用压缩的文件类型及其他选项

当开启GZip压缩之后,IIS并不是对所有内容都启用了压缩,而是有选择的进行压缩。遗憾的是,我们无法直接在IIS7管理器中配置这些压缩选项。我们首先需要在C:/Windows/System32/inetsrv/config文件夹下找到applicationhost.config文件,打开之后找到如下一节内容:

<httpCompression directory="%SystemDrive%/inetpub/temp/IIS Temporary Compressed Files">    <scheme name="gzip" dll="%Windir%/system32/inetsrv/gzip.dll" />    <dynamicTypes>        <add mimeType="text/*" enabled="true" />        <add mimeType="message/*" enabled="true" />        <add mimeType="application/x-javascript" enabled="true" />        <add mimeType="*/*" enabled="false" />    </dynamicTypes>    <staticTypes>        <add mimeType="text/*" enabled="true" />        <add mimeType="message/*" enabled="true" />        <add mimeType="application/javascript" enabled="true" />        <add mimeType="*/*" enabled="false" />    </staticTypes></httpCompression>

我们可以看到,IIS实际上是根据MIME类型来决定是否启用HTTP压缩的,以及压缩比之类的选项。可以看出,图片默认情况下是不被压缩的,这是因为图片的压缩比太低了。

我们注意到,对于Javascript来说,上面对不同的mime类型配置了不同的压缩方式。Javascript有三种常见的Mime类型,text/javascript,application/x-javascript,application/javascript。这三种类型都是合法的,在现代浏览器中也不存在什么差别。但是由于IIS7中Js文件的mime类型默认被设置为application/x-javascript,也就是说对于js文件,使用的是动态内容压缩而不是静态内容压缩,因此会导致js文件有时经过压缩的,有时却没有压缩。

ff695514.3(zh-cn,MSDN.10).png

由于js文件通常稳定之后不会再被修改了,因此建议改成静态压缩——即把dynamicTypes这一节中的application/x-javascript挪到静态压缩节中。这样保证每次脚本都是被压缩过返回的。

静态压缩及动态压缩的区别

IIS7中的HTTP压缩分为“静态内容压缩”和“动态内容压缩”,其实这两个名字第一次接触很费解。什么是动态内容什么又是静态内容?实际上,准确的翻译应该是“静态压缩”和“动态压缩”。这两个词反应了IIS的压缩行为。对于配置在staticTypes节中的mime类型,将会启用静态压缩,也就是说,当文件第一次被请求的时候,IIS会将其压缩,然后放入临时文件夹中,下次再有人请求此文件时直接从临时文件夹中取出压缩后的版本而不用重新执行压缩的过程。配置在dynamicTypes一节中的mime类型的http请求都将启用动态压缩,即每一次请求,主机都会对请求的内容——可能是存放在文件系统中的静态文件,也可能是ISAPI返回的内容——进行压缩,而不会对其进行缓存。这个压缩比率因主机性能不同而会有所调整,所以我们在请求js文件的时候才会发现js文件有时压缩有时不压缩的情况。

显而易见,静态压缩会占用一定的存储空间,但是速度快,而动态压缩不占用存储空间,但是占用CPU时间,而且压缩比不恒定。而对于经过ISAPI的请求,则不能使用静态压缩方式。例如对于WCF返回的内容。

当然了,上面有很大部分是理论行的解释,不懂的朋友直接跳过,按图操作开启就可以了

以上就是windows2008 iis7配置启用gzip压缩方法的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持武林网。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表