为什么IE 10和; 11无法加载GZipped内容(js和css)?

时间:2014-10-26 19:46:06

标签: javascript css internet-explorer compression gzip

为什么IE 10& 11无法加载GZiped内容(js和css)? 当我从支持gzip压缩的服务器加载页面时,IE加载第一个HTML页面但无法加载其他js和css文件。在控制台中显示错误,其中包含"无效字符"链接到相关的GZiped文件。

它很奇怪,因为IE正确地发送了头文件Accept-Encoding:gzip,因此没有理由相信它不支持压缩内容。

我还注意到没有其他网页在IE中提供gziped内容,因为在他们的回复中没有标题Content-Encoding:gzip。

我们正在通过AWS S3和CloudFront提供静态内容,并且由于S3和CloudFront即时支持文件压缩,我们的文件也是重复的。一个GZiped,一个没有。

有关发生了什么的任何线索?

1 个答案:

答案 0 :(得分:0)

事实证明,问题在于IE以某种方式依赖于文件扩展名来知道它正在加载什么类型的文件,而不是使用http响应Content-Type标头。我们的Gziped文件的名称与其原始文件类似,但以扩展名.gz结尾(例如,其gziped版本为file.js和file.js.gz)。我已经重命名了所有这些文件,用.gz.js或.gz.css结束它们,现在它可以正常工作。