【发布时间】:2019-12-02 11:55:07
【问题描述】:
Gzip 压缩不适用于在 iis 中托管后使用 webpack 3.10.0 的 angular 5 项目。我试过的插件是 compression-webpack-plugin@1.0.0 和 brotli-gzip-webpack-plugin。
下面显示的是示例代码,插件包含在生产配置中。
const BrotliGzipPlugin = require('brotli-gzip-webpack-plugin');
const CompressionPlugin = require('compression-webpack-plugin');
module.exports = {
plugins: [
new CompressionPlugin({
asset: "[path].gz[query]",
algorithm: "gzip",
test: /\.(js|html)$/,
threshold: 10240,
minRatio: 0.8
}),
new BrotliGzipPlugin({
asset: '[path].br[query]',
algorithm: 'brotli',
test: /\.(js|css|html|svg)$/,
threshold: 10240,
minRatio: 0.8
}),
new BrotliGzipPlugin({
asset: '[path].gz[query]',
algorithm: 'gzip',
test: /\.(js|css|html|svg)$/,
threshold: 10240,
minRatio: 0.8
})
]
}
预计会加载较小大小的文件,并在响应标头中包含类似于 content-encoding: gzip 的内容。
- 为什么在 prod 模式下文件不替换为 gz 版本?
- 是否有任何 IIS 配置可以使其工作?
这是我构建的样子,它也有 gzip、brotli 文件。
【问题讨论】:
标签: angular iis webpack http-compression