为什么使用Internet Explorer进行gzip压缩不起作用?
我的网站是gzipped压缩的,它在IE中无法正确加载。它在FF/Chrome中可以正常工作,但在IE中,弹出的唯一方法是请求下载包含该页面的html文档的.gz文件。为什么使用Internet Explorer进行gzip压缩不起作用?
这是正常的吗?我必须关闭gzip吗?
在其上有闪光的网页上使用gzip与Internet Explorer时,我已经看到了问题。如果你的网页有闪光,这可能是为什么。我不记得原因,当时我们发现它是在现场造成问题,所以我们只是禁用Internet Explorer的gzip来解决它。
这是一个有效的评论,IE6如果它看到“Vary”头和Content-Encoding一样是gzip,它将无法检索完整的响应。 – shivaspk 2013-01-15 08:11:11
要添加一件事 - 您应该关闭IE6 SP2之前的gzip压缩。在SP2之前,IE6并不总是正确读取和缓存gzip内容,并最终导致代码损坏。
您可以通过在用户代理字符串中查找“SV1”来识别IE6 SP2安装。
HTTP头是问题。如果你有以下的一个沿gzip头:
- 因人而异
- 传输编码:分块
一个或两个需要被删除。
由于Apache HTTP Server可以在任何类型的文件上使用分块编码,因此运行Apache HTTP Server的计算机上可能会出现此问题。这包括静态文件,如JavaScript文件或.gif文件。当本文中描述的问题发生时,存储在Internet Explorer缓存中的内容可能会被截断或损坏。
对于XML,XHTML和XSLT文件,防止解析为text/html或文本/ XSL:
RewriteCond %{HTTP_ACCEPT} text\/html [OR]
RewriteCond %{HTTP_ACCEPT} text\/xsl [OR]
RewriteCond %{HTTP_ACCEPT} gif|jpeg|png$
ReWriteRule .*\.(xsl|xslt)$ - [F]
并添加application/xml
作为内容类型映射:
AddType application/xml .xsl
参考文献
哪个版本的Internet Explorer? – Mez 2009-08-06 22:24:33
IE 7.未在6或8上测试过 – chris 2009-08-06 22:31:58