首頁  >  文章  >  後端開發  >  Nginx伺服器中的GZip設定參數的解析

Nginx伺服器中的GZip設定參數的解析

不言
不言原創
2018-06-25 13:47:321814瀏覽

這篇文章主要介紹了Nginx伺服器中的GZip設定參數詳解,即利用GZip來壓縮網站頁面資料,需要的朋友可以參考下

 gzip(GUN-ZIP)是一種壓縮技術,經過gzip壓縮後的頁面大小可以變成原來的30%或更小。

使用者瀏覽頁面的時候速度也會更快,gzip的壓縮頁面需要服務端於瀏覽器同時支援,服務端壓縮傳到

瀏覽器進行解壓縮並解析,現在大多數的瀏覽器都已經支援解析gzip過的頁面

gzip使用環境:http,server,location,if(x),一般我把它定義在nginx.conf的http{…..}之間
gzip on; 

開啟gzip  off關閉
gzip_min_length 1k;

設定允許壓縮的頁面最小位元組(從header頭的Content-Length中取得) 建議大於1k
gzip_buffers 4 16k;

以16k為單位,依照原始資料大小以16k為單位的4倍申請記憶體
gzip_http_version 1.1;

識別http協定的版本,早起瀏覽器可能不支援gzip自解壓縮,使用者會看到亂碼
#gzip_comp_level 2;

等級1-9 最小的壓縮最快但是消耗cpu
gzip_types text/plain application/x-javascript text/css application/xml;

#匹配壓縮類型
gzip_vary on;

啟用應答頭"Vary: Accept-Encoding"

gzip_proxied off;

#nginx做為反向代理時啟用,off(關閉所有代理結果的資料的壓縮),expired(啟用壓縮,如果header頭中包括"Expires"頭資訊),no-cache(啟用壓縮,header頭中包含"Cache-Control:no-cache"),no-store(啟用壓縮,header頭中包含"Cache-Control:no-store"),private(啟用壓縮,header頭中包含"Cache-Control:private" ),no_last_modefied(啟用壓縮,header頭中不包含"Last-Modified"),no_etag(啟用壓縮,如果header頭中不包含"Etag"頭資訊),auth(啟用壓縮,如果header頭中包含"Authorization"頭資訊)
gzip_disable msie6;

(IE5.5和IE6 SP1使用msie6參數來禁止gzip壓縮)指定哪些不需要gzip壓縮的瀏覽器(將和User- Agents進行匹配),依賴PCRE庫

gzip
決定是否開啟gzip模組
example:

gzip on;

gzip_buffers
設定gzip申請記憶體的大小,其作用是按區塊大小的倍數申請記憶體空間
param2:int(k) 後面單位是k
example:

gzip_buffers 4 8k;

#gzip_comp_level
設定gzip壓縮等級,等級越底壓縮速度越快檔案壓縮比越小,反之速度越慢檔案壓縮比越大
param:1-9
example:

gzip_com_level 1;

gzip_min_length
當傳回內容大於此值時才會使用gzip進行壓縮,以K為單位,當值為0時,所有頁面都進行壓縮
param:int
example:

gzip_min_length 1000;

gzip_types
設定需要壓縮的MIME類型,非設定值不進行壓縮
param:text/html|application/x-javascript|text/ css|application/xml
example:

gzip_types text/html;

對多數以文字為主的網站來說,文字本身內容佔流量的絕大部分。雖然單一文字體積並不算大,但是如果數量眾多的話,流量還是相當可觀。啟用GZIP以後,可以大幅減少所需的流量。以上程式碼可以插入到 http {...}整個伺服器的設定裡,也可以插入到虛擬主機的 server {...}或是下面的location模組內。

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

nginx快速檢視設定檔的方法

以上是Nginx伺服器中的GZip設定參數的解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn