webpack和vite: Gzip打包压缩
创始人
2024-06-02 17:48:15
0

前提:最近在研究打包优化,发现webpack和vite写法还是略显不同,记录一下

一、Gzip原理

Gzip压缩是一种http请求优化方式,通过压缩文件体积来提高请求加载速度。需要前端打包生成.gz后缀的文件,同时nginx配置文件启动gzip

二、webpack打包(基于vue2基础)

1. 安装依赖

npm i -D compression-webpack-plugin

2. 在vue.config.js进行配置

module.exports = {const CompressionWebpackPlugin = require('compression-webpack-plugin')if (process.env.NODE_ENV === 'production') {config.plugin('CompressionPlugin').use(new CompressionWebpackPlugin({test: /\.(js|css)$/,threshold: 10240, // 超过10kb的文件就压缩deleteOriginalAssets: true, // 不删除源文件minRatio: 0.8}))}
}

3. 遇到的问题

    安装依赖的时候,一直提示我babel必须升级到7.11.X以上,但是我用命令升级了还是不行。后面我用cnpm按照就可以了

三、vite打包

1. 安装依赖

pnpm add -D vite-plugin-compression

2. 在vite.config.js里面配置

import viteCompression from "vite-plugin-compression";
export default defineConfig({plugins: [// ...viteCompression()]
})

3. 打包后你会发现dist里面多了.gz的文件,证明成功了

 四、nginx配置

1. 找到服务器nginx目录,找到/conf下面的nginx.conf配置

// 找到对应目录地址
cd /usr/local/nginx/conf
// 编辑配置
vi nginx.conf

2. 修改配置

gzip on;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml application/javascript;
gzip_vary on;

gzip_buffers:设置压缩文件所使用缓存空间的大小(number,指定Nginx服务器需要向系统申请缓存空间的个数;size,指定每个缓存空间的大小。) 

gzip_types:压缩类型,js是application/javascript,css是text/css

gzip_comp_level:设置压缩程度,包含1-9级。级别1表示压缩程序最低,压缩效率最高;9表示压缩程度最高,压缩效率最低,最费时间。默认级别1。(压缩级别并不是越高越好,需要根据自己的情况来设定压缩级别。)

gzip_vary:设置为开启,服务器返回数据时会在头部带上"Vary:Accept-Encoding"的标识。客户端便可以知道获取到的数据是否已经被压缩,默认为关闭

3. 重启nginx

// 在sbin目录下面启动
./nginx -s reload

4. 结果展示:压缩前1.3M,时间15s,压缩后400+kb,时间毫秒级

修改前:

 修改后:

 

 总结:Gzip确实会对文件进行压缩,浏览器访问获取文件的速度真的提升。其实在nginx里面进行配置就可以了。

相关内容

热门资讯

安卓系统创建web页,基于安卓... 亲爱的读者们,你是否曾想过,你的安卓手机不仅能用来聊天、玩游戏,还能成为你个人的小网站呢?没错,今天...
安卓系统创建只读文件,安卓系统... 你有没有想过,在安卓系统里,怎么轻松创建一个只读文件呢?这就像给重要资料上把锁,防止别人随意修改,是...
安卓系统怎么不查验,一键实现无... 你有没有发现,有时候安卓系统在更新或者安装应用时,竟然不查验一下我们的手机权限,是不是有点太随意了呢...
鸿蒙系统跟安卓很像,与安卓相似... 你知道吗?最近手机圈里有个大新闻,那就是鸿蒙系统和安卓系统,它们俩简直就是一对“双胞胎兄弟”,长得可...
安卓系统断供风险,“安卓系统断... 哎呀呀,最近手机圈可是炸开了锅,华为的安卓系统竟然面临断供风险!这可真是让人捏了一把冷汗,咱们得好好...
安卓微信系统最高,极致体验背后... 你知道吗?在咱们这个手机不离手的年代,微信可是咱们生活中不可或缺的好伙伴。它不仅是个聊天工具,简直就...
小米安卓系统开不来,故障排查与... 我的小米手机怎么啦?安卓系统开不来,这可怎么办呢?别急,让我来给你支支招,让你轻松解决这个棘手的问题...
明麦刷安卓系统,明麦安卓系统刷... 你有没有想过,你的手机安卓系统是不是该换换口味了?别看它现在还能用,但有时候,换一个新系统就像给手机...
鸿蒙换安卓系统省电,续航提升的... 亲爱的手机控们,你们有没有想过,你的手机系统是不是该换换口味了呢?今天,咱们就来聊聊这个热门话题——...
安卓系统卸载了360,安卓系统... 我的手机里那个360安全卫士,最近竟然被安卓系统给卸载了!这可真是让我哭笑不得,今天就来给大家详细说...
安卓系统平板推荐便宜,盘点性价... 你有没有想过,在这个信息爆炸的时代,拥有一台性能强大又价格亲民的安卓系统平板,简直就像拥有了移动的办...
安卓系统能用的底图,探索安卓系... 你有没有想过,你的安卓手机里那些地图应用,它们是怎么把世界那么清晰地展现在你眼前的呢?没错,就是底图...
小米手机安卓系统吗,深度解析其... 你有没有想过,你的小米手机里到底装的是什么“大脑”?没错,就是那个让手机动起来的安卓系统!今天,就让...
安卓系统核心文件在哪,Andr... 你有没有想过,你的安卓手机里那些神秘的系统文件都藏在哪个角落呢?别急,今天我就要带你一探究竟,揭开安...
安卓系统与ps5系统,两大系统... 你有没有想过,为什么你的安卓手机可以轻松地下载各种应用,而你的PS5游戏机却只能玩那些官方认证的游戏...
安卓手机系统型号查询,安卓手机... 亲爱的手机控们,你是否曾有过这样的时刻:别人问你“你的手机型号是什么?”而你却一头雾水,不知从何说起...
ios系统比安卓系统好在哪,流... 你有没有发现,身边的朋友换手机的时候,总是对iOS和安卓系统争论不休?今天,我就来给你揭秘为什么那么...
安卓系统更新后又费电,揭秘原因... 亲爱的手机控们,你们有没有遇到过这种情况:手机刚升级了安卓系统,结果发现电量消耗得飞快,就像喝醉酒的...
安卓 系统属性设置,解锁手机潜... 亲爱的安卓迷们,你是否曾好奇过,那些让安卓系统如此强大的“秘密武器”究竟是什么?没错,就是那些神秘的...
安卓系统 签名验证失败,原因与... 手机里突然弹出一个“签名验证失败”的提示,是不是感觉像被小偷偷了钱包一样郁闷?别急,今天就来给你揭秘...