vue打包添加gzip配置項(xiàng)方式
vue打包添加gzip配置項(xiàng)
安裝 compression-webpack-plugin
這邊我選用的是6.1.1版本
npm install compression-webpack-plugin@6.1.1
或者
yarn add compression-webpack-plugin@6.1.1
之后在vue.config.js中添加配置項(xiàng)
?? ?const CompressionPlugin = require('compression-webpack-plugin')
?? ?module.exports = {
?? ??? ?configureWebpack: {
?? ??? ??? ?plugins: [
?? ??? ??? ??? ?new CompressionPlugin({
?? ??? ??? ? ? ? ? ?algorithm: 'gzip', // 使用gzip壓縮
?? ??? ??? ? ? ? ? ?test: /\.js$|\.css$|\.html$/, // 匹配文件名
?? ??? ??? ? ? ? ? ?filename: '[path][base].gz', // 壓縮后的文件名(保持原文件名,后綴加.gz)
?? ??? ??? ? ? ? ? ?minRatio: 0.8, // 壓縮率小于0.8才會(huì)壓縮
?? ??? ??? ? ? ? ? ?threshold: 10240, // 對超過10k的數(shù)據(jù)壓縮
?? ??? ??? ? ? ? ? ?deleteOriginalAssets: false // 是否刪除未壓縮的源文件,謹(jǐn)慎設(shè)置,如果希望提供非gzip的資源,可不設(shè)置或者設(shè)置為false(比如刪除打包后的gz后還可以加載到原始資源文件)
? ? ? ?? ??? ??? ?})
?? ??? ??? ?]
?? ??? ?}
?? ?}關(guān)于我寫這篇文章的原因
之前也找了很多博客,想學(xué)習(xí)一下如何添加gzip壓縮,結(jié)果找到的所有配置都無法使用,無奈之下只能前往npm網(wǎng)站尋找文檔
最后的結(jié)果:發(fā)現(xiàn)他們的文章,在 filename 這一項(xiàng),使用的都是filename: “[path].gz[query]”;而我在npm找到的文檔表明,應(yīng)該使用filename:"[path][base].gz"
想說的就這么多
vue3.0配置gzip 及 資源404
第一步:vue.config.js
plugins: [
new CompressionPlugin({
test:productionGzipExtensions, //匹配文件名
threshold: 10240,//對超過10k的數(shù)據(jù)壓縮
deleteOriginalAssets: true //不刪除源文件
})
],打包效果

第二步:這里使用 nginx 進(jìn)行配置
這里遇到了 小問題 :
deleteOriginalAssets: true //不刪除源文件 為true時(shí),頁面加載資源呈404,需要配置nginx開啟打包靜態(tài)文件

nginx.conf
gzip on;
gzip_static on; # 開啟靜態(tài)文件壓縮
gzip_min_length 1k; # 不壓縮臨界值,大于1K的才壓縮
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss; # #進(jìn)行壓縮的文件類型
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";開啟Nginx gzip壓縮非常簡單,達(dá)到的效果可以壓縮靜態(tài)文件大小、提高頁面訪問速度、節(jié)省流量和帶寬是很有幫助的,也為用戶省去了很多流量;唯一的不足就是開啟之后服務(wù)器這邊會(huì)增加運(yùn)算,進(jìn)行壓縮運(yùn)算處理,就比如壓縮級別,服務(wù)器cpu會(huì)有開銷。
請求正常:

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue+three.js實(shí)現(xiàn)炫酷的3D登陸頁面示例詳解
這篇文章主要為大家介紹了vue+three.js實(shí)現(xiàn)炫酷的3D登陸頁面示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
Nuxt升級2.0.0時(shí)出現(xiàn)的問題(小結(jié))
這篇文章主要介紹了Nuxt升級2.0.0時(shí)出現(xiàn)的問題(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-10-10
簡單實(shí)現(xiàn)一個(gè)vue公式編輯器組件demo
這篇文章主要介紹了輕松實(shí)現(xiàn)一個(gè)簡單的vue公式編輯器組件示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
vue實(shí)現(xiàn)富文本編輯器詳細(xì)過程
Vue富文本的實(shí)現(xiàn)可以使用一些現(xiàn)成的第三方庫,如Quill、Vue-quill-editor、wangEditor等,這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)富文本編輯器的相關(guān)資料,需要的朋友可以參考下2024-01-01
前端啟動(dòng)出現(xiàn)報(bào)錯(cuò)提示vue-cli-service?serve的原因及解決辦法
這篇文章主要給大家介紹了關(guān)于前端啟動(dòng)出現(xiàn)報(bào)錯(cuò)提示vue-cli-service?serve的原因及解決辦法,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11

