vue vite 打包开启 gzip 部署 nginx 支持 gzip
vite 打包开启 gzip
安装插件
npm i vite-plugin-compression --save-dev
vite.config.js 配置
import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
// gzip压缩
import viteCompression from "vite-plugin-compression";
const path = require("path");
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
vue(),
viteCompression(),
],
define: {
"process.env": {},
},
resolve: {
// 配置路径别名
alias: {
"@": path.resolve(__dirname, "./src"),
},
},
});
vue.config.js
const compressionWebpackPlugin = require('compression-webpack-plugin')
//...
plugins: [new compressionWebpackPlugin({
filename: '[path].gz[query]', // 压缩后的文件名
algorithm: 'gzip', // 压缩格式:gzip、brotliCompress,
test: /\.(js|css|svg)$/,
threshold: 10240,// 只处理比这个值大的资源,按字节算
minRatio: 0.8, // 只有压缩率比这个值小的文件才会被处理,压缩率=压缩大小/原始大小,如果压缩后和原始文件大小没有太大区别,就不用压缩
deleteOriginalAssets: false // 是否删除原文件,最好不删除,服务器会自动优先返回同名的.gzip资源,如果找不到还可以拿原始文件
})],
nginx 支持 gzip
开启模块之前可以查看是否有模块:--with-http_gunzip_module --with-http_gzip_static_module
nginx -V
如果没有需要安装,官网
配置作用域 在 http, server, location 都可以
#开启gzip功能 gzip on; #开启gzip静态压缩功能 gzip_static on; #gzip缓存大小 gzip_buffers 4 16k; #gzip http版本 gzip_http_version 1.1; #gzip 压缩级别 1-10 gzip_comp_level 5; #gzip 压缩类型 gzip_types text/plain application/javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png; # 是否在http header中添加Vary: Accept-Encoding,建议开启 gzip_vary on;

浙公网安备 33010602011771号