IIS开启Gzip压缩失败的原因与解决办法

发布时间:2020-04-29编辑:脚本学堂
IIS开启Gzip压缩失败的原因与解决办法

gzip是一种流行的文件压缩算法,现在的应用十分广泛,当应用Gzip压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小。使用Gzip压缩算法来对网页内容进行压缩后再传输到客户端浏览器。这样经过压缩后实际上降低了网络传输的字节数,最明显的好处就是可以加快网页加载的速度,除了节省流量,改善用户的浏览体验外,还有一个潜在的好处是Gzip与搜索引擎的抓取工具有着更好的关系。例如Google就可以通过直接读取gzip文件来比普通手工抓取更快地检索网页。这些好处并不仅仅限于静态内容,ASP、ASPX、PHP动态页面和其他动态生成的内容均可以通过使用Gzip压缩,加上其他的性能调整机制和相应的服务器端缓存规则,这可以大大提高网站的性能。

批处理文件开启iis中的Gzip压缩功能时,总是失败。

服务器环境:Windows2003+IIS+PHP+ISAPI Rewrite,检查iis的配置内容没有任何问题,但查询HTTP状态都是未开启Gzip状态,访问服务器上一个Discuz论坛的时候底部一行信息: Gzip On。难道是PHP自带的的Gzip与IIS的冲突?赶紧动手测试,打开PHP配置文件,将php_zip.dll的extension关闭,重启IIS。

完成以上操作后再检测状态,发现Gzip已是开启状态了。
原来那个Gzip开启的批处理文件没有任何问题,问题在于PHP也开启了Gzip,IIS再开的时候冲突了。
此问题可能也表明,PHP.ini的处理优先级高于Metabase.xml。