中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Nginx動態壓縮與靜態壓縮怎么實現

發布時間:2021-12-07 14:29:29 來源:億速云 閱讀:351 作者:iii 欄目:大數據

本篇內容主要講解“Nginx動態壓縮與靜態壓縮怎么實現”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Nginx動態壓縮與靜態壓縮怎么實現”吧!

Nginx 中配置前端的 gzip 壓縮,有兩種思路:

  1. Nginx 動態壓縮,靜態文件還是普通文件,請求來了再壓縮,然后返回給前端。
  2. Nginx 靜態壓縮,提前把文件壓縮成 .gz 格式,請求來了,直接返回即可。
2.2.1 Nginx 動態壓縮

動態壓縮 Vue 還是使用普通的打包編譯后的文件,將前端編譯打包后的文件拷貝到 Nginx 的 html 目錄下,然后訪問 nginx:http://192.168.91.129

確保 nginx 運行成功后,接下來對 nginx 進行配置:

gzip  on;  # 開啟 gzip
gzip_min_length 2k;# 超過 2kb 進行壓縮
gzip_disable msie6; # ie6 不適用 gzip
gzip_types text/css application/javascript text/javascript image/jpeg image/png image/gif; # 需要處理的文件
 

配置完成后,重啟 Nginx:

./nginx -s reload
 

啟動成功后,再去訪問前端頁面,就可以看到壓縮效果了。

 
2.2.2 Nginx 靜態壓縮

上面的動態壓縮有一個問題,就是每次請求響應的時候都要壓縮,其實都是相同的文件,總是壓縮有點浪費資源。

我們可以提前將文件壓縮好,就保存在服務端,需要用的時候直接返回,就會方便很多。

這需要我們首先在前端安裝壓縮插件:

npm install compression-webpack-plugin -D
 

安裝成功之后,接下來在 vue.config.js 中進行配置:

const CompressionPlugin = require("compression-webpack-plugin")
module.exports = {
   devServer: {
       host: 'localhost',
       port: 8080,
       proxy: proxyObj
   },
   configureWebpack: config => {
       if (process.env.NODE_ENV === 'production') {
           return {
               plugins: [
                   new CompressionPlugin({
                       test: /\.js$|\.html$|\.css/,
                       threshold: 1024,
                       deleteOriginalAssets: false
                   })
               ]
           }
       }
   }
}
 
  • threshold 表示超過 1kb 的文件就進行壓縮。
  • deleteOriginalAssets 表示壓縮后是否刪除原文件。

配置完成后,再次執行打包命令 vue-cli-service build。這次打包完成后,我們可以在 js 目錄下看到 .gz 文件,如下:

Nginx動態壓縮與靜態壓縮怎么實現  

接下來將文件上傳到 Nginx 服務器,然后對 Nginx 重新進行編譯打包。想讓 Nginx 返回已經壓縮好的文件,需要用到 Nginx 中的 http_gzip_static_module 模塊,這個模塊可以發送以 .gz 作為文件擴展名的預壓縮文件,所以我們要對 Nginx 重新進行編譯打包:

./configure --with-http_gzip_static_module
make
make install
 

然后在 Nginx 配置文件中開啟 gzip_static,如下:

gzip_static  on;
 

注意,開啟了 gzip_static 后,gzip_types 就失效了,所以也沒必要配置這個屬性了。

配置完成后,重啟 Nginx,再去訪問,查看瀏覽器日志,就會發現 gzip 已經生效了。

「注意」

靜態壓縮返回的 gzip 壓縮文件都是提前準備好的,沒有 .gz 格式的文件就會自動返回原文件。這是一種和動態壓縮不同的響應策略。動態壓縮是根據 Nginx 中的配置,超過配置的大小就會自動進行壓縮。

到此,相信大家對“Nginx動態壓縮與靜態壓縮怎么實現”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

轮台县| 家居| 扎赉特旗| 河南省| 赞皇县| 定结县| 龙州县| 保德县| 资源县| 长春市| 五大连池市| 明星| 云霄县| 道孚县| 天柱县| 保靖县| 蓝山县| 衡阳县| 轮台县| 紫阳县| 安化县| 凌云县| 镇原县| 全州县| 巨鹿县| 溧阳市| 德清县| 麦盖提县| 昭苏县| 龙岩市| 五大连池市| 盖州市| 休宁县| 仁怀市| 大悟县| 嘉荫县| 专栏| 奉贤区| 平利县| 建平县| 长兴县|