我有简单的带有webpack的VueJs应用程序,在webpack.prod.conf.js
文件中,我启用了productionGzip
,为dist文件夹中的每个块生成.gz
文件。
productionGzip: true,
productionGzipExtensions: ['js', 'css'],
当我在浏览器中加载我的应用程序时,我可以看到.js
个文件已加载但我看不到任何带有content-encoding: gzip
的标记或任何表示.gz
个文件生效的文件。浏览器网络标签中加载的所有.js
个文件都有Content-Type: application/javascript
如何验证Chrome浏览器中是否加载.gz
个文件?
答案 0 :(得分:0)
这取决于您的服务器如何提供静态文件。
例如,我使用简单节点http-server
包来测试生产构建。
-g
或--gzip
启用后(默认为false
)当文件的gzip压缩版本存在时,它将代替./public/some-file.js.gz
提供./public/some-file.js
请求接受gzip编码。
所以我运行http-server --gzip ./dist
来提供已编译的文件。
使用 nginx ,您需要HttpGzipStatic
module并将gzip_static on;
放入配置中。 (source)
您知道如何为此案例配置IIS吗?
配置IIS以提供预压缩文件看起来并不简单,但tell IIS to compress static files很容易,因此您可以将productionGzip
选项设置为false并让IIS完成工作。< / p>
Angular's PRE-Gzipped files are not served via IIS?或此ASP.Net issue。