Nginx Gzip模組啟用和配置指令詳解
這篇文章主要介紹了Nginx Gzip模組啟用和配置指令詳解的,需要的朋友可以參考下
Nginx的gzip模組是內建的,在http中新增如下配置:
複製程式碼 程式碼如下:gzip on;
gzip_min_length 5k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 3;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary on;
配置指令詳細註釋:
gzip on|off
預設值: gzip off
開啟或者關閉gzip模組
gzip_static on|off
nginx對於靜態檔案的處理模組
該模組可以讀取預先壓縮的gz檔案,這樣可以減少每次請求進行gzip壓縮的CPU資源消耗。該模組啟用後,nginx首先檢查是否存在請求靜態檔案的gz結尾的檔案,如果有則直接返回該gz檔案內容。為了要相容不支援gzip的瀏覽器,啟用gzip_static模組就必須同時保留原始靜態檔案和gz檔案。這樣的話,在有大量靜態檔案的情況下,將會大大增加磁碟空間。我們可以利用nginx的反向代理功能實現只保留gz檔案。
可以google"nginx gzip_static"瞭解更多
gzip_comp_level 4
預設值:1(建議選擇為4)
gzip壓縮比/壓縮級別,壓縮級別 1-9,級別越高壓縮率越大,當然壓縮時間也就越長(傳輸快但比較消耗cpu)。
gzip_buffers 4 16k
預設值: gzip_buffers 4 4k/8k
設定系統獲取幾個單位的快取用於儲存gzip的壓縮結果資料流。 例如 4 4k 代表以4k為單位,按照原始資料大小以4k為單位的4倍申請記憶體。 4 8k 代表以8k為單位,按照原始資料大小以8k為單位的4倍申請記憶體。
如果沒有設定,預設值是申請跟原始資料相同大小的記憶體空間去儲存gzip壓縮結果。
gzip_types mime-type [mime-type …]
預設值: gzip_types text/html (預設不對js/css檔案進行壓縮)
壓縮型別,匹配MIME型別進行壓縮
不能用萬用字元 text/*
(無論是否指定)text/html預設已經壓縮
設定哪壓縮種文字檔案可參考 conf/mime.types
gzip_min_length 1k
預設值: 0 ,不管頁面多大都壓縮
設定允許壓縮的頁面最小位元組數,頁面位元組數從header頭中的Content-Length中進行獲取。
建議設定成大於1k的位元組數,小於1k可能會越壓越大。 即: gzip_min_length 1024
gzip_http_version 1.0|1.1
預設值: gzip_http_version 1.1(就是說對HTTP/1.1協議的請求才會進行gzip壓縮)
識別http的協議版本。由於早期的一些瀏覽器或者http客戶端,可能不支援gzip自解壓,使用者就會看到亂碼,所以做一些判斷還是有必要的。
注:99.99%的瀏覽器基本上都支援gzip解壓了,所以可以不用設這個值,保持系統預設即可。
假設我們使用的是預設值1.1,如果我們使用了proxy_pass進行反向代理,那麼nginx和後端的upstream server之間是用HTTP/1.0協議通訊的,如果我們使用nginx透過反向代理做Cache Server,而且前端的nginx沒有開啟gzip,同時,我們後端的nginx上沒有設定gzip_http_version為1.0,那麼Cache的url將不會進行gzip壓縮
gzip_proxied [off|expired|no-cache|no-store|private|no_last_modified|no_etag|auth|any] …
預設值:off
Nginx作為反向代理的時候啟用,開啟或者關閉後端伺服器返回的結果,匹配的前提是後端伺服器必須要返回包含"Via"的 header頭。
文章來源:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69911024/viewspace-2641383/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- nginx的gzip指令介紹,Nginx的gzip指令使用小結Nginx
- nginx快取配置及開啟gzip壓縮Nginx快取
- Nginx原始碼研究之nginx限流模組詳解Nginx原始碼
- 如何用好Nginx的gzip指令Nginx
- nginx配置gzip中的坑Nginx
- nginx配置詳解Nginx
- 入門系列之在Nginx配置GzipNginx
- Nginx使用SSL模組配置httpsNginxHTTP
- Nginx的gzip配置引數說明Nginx
- nginx指定埠開啟gzip壓縮Nginx
- nginx gzip 與 gzip_staticNginx
- Profinet轉ModbusTCP閘道器模組的配置與應用詳解TCP
- Nginx日誌配置詳解Nginx
- Nginx如何配置HTTPS詳解NginxHTTP
- nginx 詳解 - 詳細配置說明Nginx
- nginx 詳解 – 詳細配置說明Nginx
- Nginx location 和 proxy_pass路徑配置詳解Nginx
- python模組詳解Python
- matplotlib模組詳解
- difflib模組詳解
- psutil模組詳解
- Nginx的配置檔案詳解Nginx
- Nginx 配置檔案 nginx.conf 中文詳解Nginx
- nginx gzip on 無效Nginx
- Nginx的Gzip功能Nginx
- 紅外模組詳解
- lms框架模組詳解框架
- Python3 中 configparser 模組解析配置的用法詳解Python
- nginx.conf 配置檔案詳解Nginx
- Nginx的超時timeout配置詳解Nginx
- Nginx 配置檔案引數詳解Nginx
- nginx重啟指令碼Nginx指令碼
- webpack根據需求配置打包模組及打包指令Web
- 詳解Python中sys模組的功能與應用Python
- 詳解AFNetworking的HTTPS模組HTTP
- Python之time模組詳解Python
- 詳解Nginx如何配置Web伺服器NginxWeb伺服器
- Nginx URL重寫規則配置詳解Nginx