javascript - 为什么 IE 10 和 11 无法加载 GZiped 内容(js 和 css)?

标签 javascript css internet-explorer compression gzip

为什么 IE 10 和 11 无法加载 GZiped 内容(js 和 css)? 当我从支持 gzip 压缩的服务器加载页面时,IE 加载第一个 HTML 页面但无法加载其他 js 和 css 文件。在控制台中显示一条错误消息,类似于“无效字符”链接到有问题的 GZiped 文件。

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

我还注意到没有其他页面在 IE 中提供 gzip 内容,因为它们的响应中没有 header Content-Encoding: gzip。

我们从 AWS S3 和 CloudFront 提供我们的静态内容,由于 S3 和 CloudFront 都支持动态文件压缩,所以我们的文件被复制了。一个 GZiped,一个没有。

有什么线索吗?

最佳答案

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

关于javascript - 为什么 IE 10 和 11 无法加载 GZiped 内容(js 和 css)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26577160/

相关文章:

javascript - 如何使用 Javascript 使 div 中的图像出现

java - 表单填充历史数据后如何更改表单背景?

c# - 浏览器的后退按钮在 ASP.NET 应用程序中随机禁用

javascript - HTML5 Canvas 相机/视口(viewport) - 如何实际操作?

javascript - 来自 <strong> 元素的 ParseInt/text/value

javascript - 打开模式时阻止背景滚动

php - 如何在 echo <td> 中应用样式?

internet-explorer - 自定义 SVG 标记不会在 IE 11 中显示

internet-explorer - IE 不遵循重定向,给出 "Internet Explorer cannot display the webpage"

javascript - 我的 javascript 下拉导航菜单显示在 Internet Explorer 7 的内容后面