在Nginx中開啟gzip壓縮配置

2022-09-23 17:27:10 字數 3175 閱讀 3050

這個模組主要負責gzip功能的開啟和設定

語法結構:gzip on | off

預設為off,不棄用gzip,只有該指令置為on的時候,下列指令才有用

語法結構:gzip_buffersnumber size

number: 指定nginx伺服器需要向系統申請快取空間的個數

size: 指定每乙個快取的大小

設定nginx伺服器需要向系統申請 number * size大小的空間用於儲存壓縮資料,預設值gzip_buffers 32 4k

語法結構:gzip_comp_levellevel

level: 壓縮程度,可選值[1-9]

表示設定gzip的壓縮程度

語法結構:gzip_disableregex ......

regex: 跟據客戶端user-agent進行設定,支援使用正規表示式

針對不同種類的客戶端發起的請求,可以選擇性的開啟或者關閉gzip功能,比如gzip_disablemsie [4-6]\.表示包含了msie4,msie5,msie6 的所有瀏覽器,nginx伺服器不進行gzip壓縮

語法結構:gzip_http_version1.0|1.1

預設設定為1.1,也就只有1.1以上的版本的http協議,才使用gzip功能對應輸出資料進行壓縮

語法結構:gzip_min_lengthlength

當資料達到設定的最小大小才啟用gzip功能

語法結構:gzip_proxiedoff | expired | no-cache | no-store | private | no_last_modified| auth |any....

off: 不啟用壓縮

expired: 當後端伺服器響應header包含響應資料過期時間的expired域的時候,啟用對響應資料的gzip壓縮

no-cache:後端伺服器響應頭是否包含通知所有快取機制cache-control為no-cache的時候,啟用gzip

no-store: 後端伺服器響應頭是否包含通知所有快取機制cache-control為no-store的時候,啟用gzip

private: 後端伺服器響應頭是否包含通知所有快取機制cache-control為private的時候,啟用gzip

no_last_modified: 後端伺服器響應頭不包含用於指明需要獲取最後修改時間的last-modified頭域的時候,啟用gzip

auth: 後端伺服器響應頭包含http授權證書authorization的時候,啟用gzip

是否對後端伺服器返回結果進行壓縮

語法結構:gzip_typesmime-types ......

mime-types: 可以取值text/application,text/html等

nginx伺服器可以根據響應頁的mime型別選擇性的開啟gzip功能

語法結構:gzip_vary on |off

設定在使用gzip功能的時候是否傳送帶有vary:accept-encoding頭域的響應頭部。

這個模組主要負責搜尋和傳送經過gzip功能預壓縮的資料,這些資料以.gz作為字尾名儲存在伺服器上。如果客戶端請求的資料之前已經被壓縮過,並且客戶端端瀏覽器支援gzip壓縮,那麼就直接返回壓縮後的資料。

ntx_http_gzip_module: 主要是靜態壓縮,在http響應頭部包含content-length頭域來指明報文長度,用於伺服器可以確定資料長度的情況;ngx_http_gzip_static_module預設使用chunked編碼的動態壓縮,主要適用於無法確定響應資料長度的情況,比如檔案**等

語法結構:gzip_static on| off |always

語法結構:gzip_proxiedoff | expired | no-cache | no-store | private |auth

和上面的比,只是接收以下的設定

nginx伺服器支援對響應輸出資料流進行gzip壓縮,這對客戶端瀏覽器來講,需要有能力解壓和處理gzip壓縮資料,但如果客戶端本身不支援該功能,就需要nginx伺服器在向其傳送資料之前先將資料解壓。這些資料可能來自後端伺服器壓縮或者nginx的預壓縮。

語法結構:gunzip on | off

開啟或者關閉gunzip

語法結構:gunzip_buffersnumber size

number: 指定nginx伺服器需要向系統申請快取空間的個數

size: 指定每乙個快取的大小

設定nginx伺服器需要向系統申請 number * size大小的空間用於儲存壓縮資料,預設值gunzip_buffers 32 4k

語法結構:gzip_http_version1.0|1.1

預設設定為1.1,也就只有1.1以上的版本的http協議,才使用gzip功能對應輸出資料進行壓縮

語法結構:gzip_proxiedoff | expired | no-cache | no-store | private | no_last_modified| auth |any....

off: 不啟用壓縮

expired: 當後端伺服器響應header包含響應資料過期時間的expired域的時候,啟用對響應資料的gzip壓縮

no-cache:後端伺服器響應頭是否包含通知所有快取機制cache-control為no-cache的時候,啟用gzip

no-store: 後端伺服器響應頭是否包含通知所有快取機制cache-control為no-store的時候,啟用gzip

private: 後端伺服器響應頭是否包含通知所有快取機制cache-control為private的時候,啟用gzip

no_last_modified: 後端伺服器響應頭不包含用於指明需要獲取最後修改時間的last-modified頭域的時候,啟用gzip

auth: 後端伺服器響應頭包含http授權證書authorization的時候,啟用gzip

是否對後端伺服器返回結果進行壓縮

語法結構:gzip_disableregex ......

regex: 跟據客戶端user-agent進行設定,支援使用正規表示式

針對不同種類的客戶端發起的請求,可以選擇性的開啟或者關閉gzip功能,比如gzip_disablemsie [4-6]\.表示包含了msie4,msie5,msie6 的所有瀏覽器,nginx伺服器不進行gzip壓縮

語法結構:gzip_vary on |off

設定在使用gzip功能的時候是否傳送帶有vary:accept-encoding頭域的響應頭部。

nginx 開啟gzip壓縮

一 背景介紹 歷史遺留問題,在專案建立初期前端力量薄弱,大部分image js css與業務應用存放在一起,未上傳到cdn中,最終導致 訪問緩慢,經過排查由於靜態資源大量消耗頻寬。接下來介紹通過nginx的gzip對靜態資源進行壓縮,減少頻寬消耗。二 gzip gzip是gnu zip的縮寫,它是乙...

nginx開啟gzip壓縮

最近研究vue有點上道了,打包了乙個demo扔到測試伺服器上練練部署和調優,記錄一下nginx開啟gzip壓縮的方法 修改nginx站點的配置檔案 sudo vim etc nginx sites enabled default.conf 配置修改如下,注意nginx配置檔案語法要求每行末尾必須以 ...

Nginx 開啟Gzip壓縮的方法

將下面 貼上入nginx.conf檔案的http段 重啟nginx即可 下面詳細講解各個配置說明 gzip on 該指令用於開啟或關閉gzip模組 on off gzip min length 1k 設定允許壓縮的頁面最小位元組數,頁面位元組數從header頭得content length中進行獲取...