nginx中gzip模塊

  gzip             on;
  gzip_min_length  1000;
  gzip_proxied     expired no-cache no-store private auth;
  gzip_types       text/plain application/xml;
  gzip_disable     "MSIE [1-6]\.";

可以使用$gzip_ratio變量指定壓縮比率。

指令

gzip

語法:gzip on|off
默認值:gzip off
使用字段:http, server, location, location中的if字段
指定是否啓用gzip壓縮。

gzip_buffers

語法gzip_buffers number size
默認值gzip_buffers 4 4k/8k
使用字段:http, server, location
指定緩存壓縮應答的緩衝區數量和大小,如果不設置,一個緩存區的大小爲分頁大小,根據環境的不同可能是4k或8k。

gzip_comp_level

語法:gzip_comp_level 1..9
默認值:gzip_comp_level 1
使用字段:http, server, location
指定壓縮等級,其值從1到9,1爲最小化壓縮(處理速度快),9爲最大化壓縮(處理速度慢)。

gzip_disable

語法:gzip_disable regex
使用字段:http, server, location
使用正則表達式來指定某些不需要gzip壓縮的瀏覽器(將和User-Agents進行匹配)。依賴於PCRE庫。在0.6.23版本中首次使用。
0.7.63版本以後,你可以爲IE5.5和IE6 SP1使用msie6參數來禁止gzip壓縮。
gzip_disable     "msie6";

gzip_http_version

語法:gzip_http_version 1.0|1.1
默認值:gzip_http_version 1.1
使用字段:http, server, location
是否根據HTTP請求版本來啓用gzip壓縮。
當HTTP版本爲1.0時,Vary: Accept-Encoding沒有被設置,這將引起某些代理緩存失效,可以使用add_header,同樣,在使用這個版本時Content-Length也沒有設置,因此Keepalive不能在這個版本使用。

gzip_min_length

語法:gzip_min_length length
默認值:gzip_min_length 0
使用字段:http, server, location
設置被壓縮的最小請求,單位爲bytes。少於這個值大小的請求將不會被壓縮,這個值由請求頭中的Content-Length字段決定。

gzip_proxied

語法:gzip_proxied [off|expired|no-cache|no-store|private|no_last_modified|no_etag|auth|any] …
默認值:gzip_proxied off
使用字段:http, server, location
根據某些請求和應答來決定是否在對代理請求的應答啓用壓縮,事實上,代理請求取決於請求頭中的“Via”字段,指令中可以同時指定多個不同的參數:
  • off - 爲所有代理請求禁用壓縮。
  • expired - 當“Expires”頭禁用緩存時啓用壓縮。
  • no-cache - 當“Cache-Control”頭設置爲no-cache時啓用壓縮。
  • no-store - 當“Cache-Control”頭設置爲no-store時啓用壓縮。
  • private - 當“Cache-Control”頭設置爲private時啓用壓縮。
  • no_last_modified - 當“Last-Modified”沒有定義時啓用壓縮。
  • no_etag - 沒有“ETag”頭時啓用壓縮。
  • auth - 當有一個“Authorization”頭時啓用壓縮。
  • any - 爲所有請求啓用壓縮。

gzip_types

gzip_types mime-type [mime-type …]
默認值:gzip_types text/html
使用字段:http, server, location
爲除“text/html”之外的MIME類型啓用壓縮,“text/html”總是會被壓縮。

gzip_vary

ggzip_vary on|off
默認值:gzip_vary off
使用字段:http, server, location
啓用應答頭“Vary: Accept-Encoding”,注意,由於一個bug將導致IE 4-6無法緩存內容。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章