IE6浏览器中的gzip压缩输出问题

    网站为了提供更好的用户体验,我们会想办法提高用户的浏览加载速度。通常会将javascript代码进行gzip压缩后再传输到客户端的浏览器,这样文件大约可以压缩至原来30%-40%的大小。而且目前大部份的浏览器都支持gzip压缩输出,如IE、Firefox 、Chrome等主流浏览器。不过今天在测试代码的时候却发现了一个大问题。在IE6浏览器上会出现javascript脚本执行慢或是页面假死的现象,而在IE8和Firefox上都运行的非常良好,通过ajax请求数据时也会出现数据异常的情况?

    到微软官方一查,给的答复令人非常的无语:“请不要对脚本文件开启http压缩”。

    没有办法,微软都这么说了,我们只好禁用gzip。具体的解决方法:

    tomcat中,编辑conf/server.xml ,在相应的Connector 中禁用gzip,compression=”off”,其他服务器做法类似,禁用gzip就行了,这种做法对所有浏览器发出的请求都禁用了gzip。

    <Connector port=”80″ address=”0.0.0.0″ protocol=”HTTP/1.1″

    enableLookups=”false” redirectPort=”8443″ acceptCount=”100″

    connectionTimeout=”20000″ disableUploadTimeout=”true”

    compression=”off”  />

    还有一种办法就是在服务器端增加对浏览器的识别代码,如果是IE6及更低版本的IE浏览器就禁用gzip,对其他浏览器启用gzip压缩,可以这样做(我只测试了nginx):

在nginx.conf文件的server节点中加入

    gzip on;

    gzip_disable “MSIE [1-6]\.”;

个人建议还是考虑第二方案比较好。

PS:看完这篇文章以后,就算是外行人,应该也明白为什么那么多人迫切希望淘汰IE6了。


本文转载自:http://www.iefans.net/ie6-gzip-yasuo/

更多关于ie6和gzip的bug:http://www.cnblogs.com/_franky/archive/2012/04/28/2475223.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值