我有一个 Angular2 TypeScript 应用程序。
我使用 Firebase 进行托管,并使用 cloudflare 来提高速度、缓存和保护。
浏览器 header 显示:accept-encoding:gzip, deflate, sdch, br
这会转换为 app.js 文件,并且现在已缩小至 1.6mb。
然后我用 GZIP 压缩了这个 app.js 文件。
我想使用现在 GZIP 压缩的 app.js 文件,而不是原始的 1.6mb app.js 文件。因此,我指向 index.html 页面中的 app.js.gz 文件,并收到一个名为:
的浏览器错误app.js.gz:1 未捕获的语法错误:无效或意外的 token
下面是我的 app.js 文件和 index.html 的屏幕截图。
如果您需要更多信息或屏幕截图,请告诉我。
看来我需要做点别的事情才能让它发挥作用。 我是否需要进行一些 cloudflare 设置才能接受 .gz 文件或其他文件?
最佳答案
这些 gzip 对于可以使用预压缩文件的网络服务器来说是很重要的,他们不必在每次请求时都对其进行 gzip 压缩或缓存它。 然后它传输的 js 被压缩,浏览器/cloudflare 处理其余的事情。因此,您不必编辑脚本标签即可使用 gzip 或不使用它。
但是您可以简单地使用 nginx 并在那里启用 gzip(并且不要使用 .gz)来处理来自 cloudflare 的少数请求。
关于javascript - 我运行应用程序时出现 Angular2 GZIP 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41047617/