欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue項(xiàng)目打包開(kāi)啟gzip壓縮具體使用方法

 更新時(shí)間:2023年07月14日 09:43:41   作者:fuGUI  
這篇文章主要為大家介紹了vue項(xiàng)目打包開(kāi)啟gzip壓縮具體使用方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

使用前

使用后

方法

webpack配置Compression-webpack-plugin壓縮gzip文件

作用:提升網(wǎng)絡(luò)傳輸率->優(yōu)化web頁(yè)面加載時(shí)間

基本原理

  • 瀏覽器請(qǐng)求資源文件時(shí)會(huì)自動(dòng)帶一個(gè)Accept-Encoding的請(qǐng)求頭告訴服務(wù)器支持的壓縮編碼類(lèi)型
  • 服務(wù)器配置開(kāi)啟gzip選項(xiàng):接收客戶端資源文件請(qǐng)求,查看請(qǐng)求頭Content-encoding支持的壓縮編碼格式,如果是包含gzip那么在每次響應(yīng)資源請(qǐng)求之前進(jìn)行g(shù)zip編碼壓縮后再響應(yīng)返回資源文件(在響應(yīng)頭會(huì)帶上Content-encoding: gzip)
  • 瀏覽器接收到響應(yīng)后查看請(qǐng)求頭是否帶有Content-encoding:gzip,如果有進(jìn)行對(duì)返回的資源文件進(jìn)行解壓縮然后再進(jìn)行解析渲染

具體使用

1.安裝插件

npm install --save-dev compression-webpack-plugin

2.配置插件

const CompressionPlugin = require('compression-webpack-plugin');
const productionGzipExtensions = /\.(js|css|json|txt|html|ico|svg)(\?.*)?$/i;
module.exports = {
    publicPath: './',
    productionSourceMap: false,
    configureWebpack: {...},
    chainWebpack: config => {
        config.resolve.alias.set('@', resolve('src'));
        if (process.env.NODE_ENV === 'production') {
            config.plugin('compressionPlugin')
            .use(new CompressionPlugin({
                filename: '[path].gz[query]',
                algorithm: 'gzip',
                test: productionGzipExtensions,
                threshold: 10240,
                minRatio: 0.8,
                deleteOriginalAssets: true
            }));
        }
    },
};

或者

const CompressionPlugin = require("compression-webpack-plugin");
const productionGzipExtensions = ['js', 'css']
module.exports = {
 configureWebpack: {
    // provide the app's title in webpack's name field, so that it can be accessed
    // in index.html to inject the correct title.
    name: name,
    resolve: {
      alias: {
        '@': resolve('src'),
      },
    },
    plugins: [
      new webpack.ProvidePlugin({
        $: 'jquery',
        jQuery: 'jquery',
        'windows.jQuery': 'jquery',
      }),
      new CompressionPlugin({
        algorithm: 'gzip',
        test: new RegExp('\\.(' + productionGzipExtensions.join('|') + ')$'),
        threshold: 10240,
        minRatio: 0.8
      })
    ],
  }
}

3.nginx配置

http {
  gzip on; #on為啟用,off為關(guān)閉
    gzip_static on; 
    gzip_min_length 1k; #設(shè)置允許壓縮的頁(yè)面最小字節(jié)數(shù),頁(yè)面字節(jié)數(shù)從header頭中的Content-Length中進(jìn)行獲取。默認(rèn)值是0,不管頁(yè)面多大都?jí)嚎s。建議設(shè)置成大于1k的字節(jié)數(shù),小于1k可能會(huì)越壓越大。
    gzip_buffers 4 32k; #獲取多少內(nèi)存用于緩存壓縮結(jié)果,‘4 16k'表示以16k*4為單位獲得
    gzip_http_version 1.1; #識(shí)別http協(xié)議的版本,早起瀏覽器可能不支持gzip自解壓,用戶會(huì)看到亂碼
    gzip_comp_level 2; #gzip壓縮比(1~9),越小壓縮效果越差,但是越大處理越慢,所以一般取中間值;
    gzip_types text/plain application/x-javascript text/css application/xml;#對(duì)特定的MIME類(lèi)型生效,其中'text/html'被系統(tǒng)強(qiáng)制啟用
    gzip_vary on; #啟用應(yīng)答頭"Vary: Accept-Encoding"
    gzip_disable "MSIE [1-6].";#配置禁用gzip條件,支持正則。此處表示ie6及以下不啟用gzip(因?yàn)閕e低版本不支持)
}

以上就是vue項(xiàng)目打包開(kāi)啟gzip壓縮具體使用方法的詳細(xì)內(nèi)容,更多關(guān)于vue打包開(kāi)啟gzip壓縮的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 基于Vue3實(shí)現(xiàn)無(wú)限滾動(dòng)組件的示例代碼

    基于Vue3實(shí)現(xiàn)無(wú)限滾動(dòng)組件的示例代碼

    如果你在社交媒體上停留的時(shí)間過(guò)長(zhǎng),那么,你所在的網(wǎng)站很可能正在使用無(wú)限滾動(dòng)組件。這篇文章教你利用Vue3實(shí)現(xiàn)無(wú)限滾動(dòng)組件,感興趣的可以參考一下
    2022-09-09
  • 使用Electron打包vue文件變成exe應(yīng)用程序的全過(guò)程

    使用Electron打包vue文件變成exe應(yīng)用程序的全過(guò)程

    這篇文章主要給大家介紹了使用Electron打包vue文件變成exe應(yīng)用程序的全過(guò)程,文中通過(guò)代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下
    2024-01-01
  • vant3中使用List組件的一些坑

    vant3中使用List組件的一些坑

    這篇文章主要介紹了vant3中使用List組件的一些坑及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue項(xiàng)目中進(jìn)行svg組件封裝及配置方法步驟

    vue項(xiàng)目中進(jìn)行svg組件封裝及配置方法步驟

    本文主要介紹了vue項(xiàng)目中進(jìn)行svg組件封裝及配置方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 淺談vue-cli加載不到dev-server.js的解決辦法

    淺談vue-cli加載不到dev-server.js的解決辦法

    本篇文章主要介紹了淺談vue-cli加載不到dev-server.js的解決辦法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • Vue中使用Teleport的方法示例

    Vue中使用Teleport的方法示例

    這篇文章主要為大家介紹了Vue中使用Teleport的方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • vue利用better-scroll實(shí)現(xiàn)輪播圖與頁(yè)面滾動(dòng)詳解

    vue利用better-scroll實(shí)現(xiàn)輪播圖與頁(yè)面滾動(dòng)詳解

    在我們?nèi)粘5捻?xiàng)目開(kāi)發(fā)中,處理滾動(dòng)和輪播圖是再常見(jiàn)不過(guò)的需求了,下面這篇文章主要給大家介紹了關(guān)于vue利用better-scroll實(shí)現(xiàn)輪播圖與頁(yè)面滾動(dòng)的相關(guān)資料,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。
    2017-10-10
  • 通過(guò)npm或yarn自動(dòng)生成vue組件的方法示例

    通過(guò)npm或yarn自動(dòng)生成vue組件的方法示例

    這篇文章主要介紹了通過(guò)npm或yarn自動(dòng)生成vue組件的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • Vue移動(dòng)端右滑屏幕返回上一頁(yè)附源碼下載

    Vue移動(dòng)端右滑屏幕返回上一頁(yè)附源碼下載

    這篇文章主要介紹了Vue移動(dòng)端右滑屏幕返回上一頁(yè),本文結(jié)合實(shí)例給大家介紹的非常詳細(xì),并附有源碼下載,需要的朋友可以參考下
    2019-06-06
  • 解決Vue中使用keepAlive不緩存問(wèn)題

    解決Vue中使用keepAlive不緩存問(wèn)題

    這篇文章主要介紹了Vue中使用keepAlive不緩存問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08

最新評(píng)論