vue.config.js
const CompressionWebpackPlugin = require('compression-webpack-plugin');
chainWebpack: config => {
config.plugins.delete('prefetch');
if (process.env.NODE_ENV !== 'development') {
// 生产环境进行gzip压缩
config.plugin('compression-webpack-plugin').use(new CompressionWebpackPlugin({
test: /\.(js|css|html)$/,
threshold: 10240
}));
}
}
nginx
server{
gzip on;
gzip_buffers 32 4K;
gzip_comp_level 6;
gzip_min_length 100;
gzip_types application/javascript text/css text/xml;
gzip_disable "MSIE [1-6]\."; #配置禁用gzip条件,支持正则。此处表示ie6及以下不启用gzip(因为ie低版本不支持)
gzip_vary on;
}
重启nginx 后,通过命令查看
curl -I -H "Accept-Encoding:gzip,deflate" "www.yourhostname.com"
或者看请求里的content-encoding 是否为gzip,如果有gzip, 那么开启gzip压缩访问成功。 注,配置的时候尽量不要配置图片、字体或者媒体文件开启压缩。压缩比小,耗CPU