gzip模塊是我們?cè)趎ginx里面經(jīng)常用到的,壓縮響應(yīng)的數(shù)據(jù),這通常有助于將傳輸數(shù)據(jù)的大小減少一半甚至更多。可以讓我們?cè)L問(wèn)網(wǎng)站更為流暢。
Syntax |
Default |
Context |
gzip on | off; | gzip off; | http, server, location, if in location |
gzip_buffers number size; | gzip_buffers 32 4k|16 8k; | http, server, location |
gzip_comp_level level; |
gzip_comp_level 1; | http, server, location |
gzip_disable regex …; | — | http, server, location |
gzip_http_version 1.0 | 1.1; | gzip_http_version 1.1; | http, server, location |
gzip_min_length length; | gzip_min_length 20; | http, server, location |
gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any | gzip_proxied off; | http, server, location |
gzip_types mime-type …; | gzip_types text/html; | http, server, location |
gzip_vary on | off; | gzip_vary off; | http, server, location |
官方鏈接:http://nginx.org/en/docs/http/ngx_http_gzip_module.html
配置示例:
gzip on;
gzip_buffers 16 8k;
gzip_comp_level 6;
gzip_disable “MSIE [4-6].”
gzip_min_length 1000;
gzip_http_version 1.1;
gzip_proxied any;
gzip_types text/plain text/css application/xml application/javascript application/json;
gzip_vary on;
gzip
語(yǔ)法:gzip on|off
默認(rèn):gzip off
功能:開(kāi)啟或者關(guān)閉gzip功能
gzip_buffers
語(yǔ)法:gzip_buffers number size
默認(rèn):gzip_buffers 32 4k | 16 8k
功能:置系統(tǒng)獲取幾個(gè)單位的緩存用于存儲(chǔ)gzip的壓縮結(jié)果數(shù)據(jù)流。32 4k代表以4k為單位,安裝原始數(shù)據(jù)大小以4k為單位的32倍申請(qǐng)內(nèi)存。
gzip_comp_level
語(yǔ)法:gzip_comp_level level
默認(rèn):gzip_comp_level 1
功能:設(shè)置gzip的壓縮級(jí)別,取值[1-9],數(shù)值越大壓縮率越高,壓縮時(shí)消耗的資源越多,通常合理取值是4-6。
gzip_disable
語(yǔ)法:gzip_disable regex;
默認(rèn):-
功能:將”User-Agent”請(qǐng)求頭進(jìn)行正則匹配,滿(mǎn)足regex正則的請(qǐng)求對(duì)其響應(yīng)時(shí)不啟用gzip壓縮,通常用來(lái)去除ie6等對(duì)gzip壓縮支持不是很好的瀏覽器的gzip壓縮
gzip_http_version
語(yǔ)法:gzip_http_version 1.0|1.1
默認(rèn):gzip_http_version 1.1;
功能:僅對(duì)指定版本的http請(qǐng)求的響應(yīng)進(jìn)行壓縮,通常取值1.1
gzip_min_length
語(yǔ)法:gzip_min_length length
默認(rèn):gzip_min_length 20;
功能:?jiǎn)⒂胓izp壓縮的響應(yīng)臨界值大小,僅與響應(yīng)頭的”Content-Length”的值進(jìn)行比較,只有大于gzip_min_length的響應(yīng)才會(huì)進(jìn)行壓縮,比較合理的值是1000
gzip_proxied
語(yǔ)法:gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any
默認(rèn):gzip_proxied off;
功能:根據(jù)請(qǐng)求和響應(yīng),啟用或禁用壓縮代理請(qǐng)求的響應(yīng)。
off 對(duì)所有代理請(qǐng)求禁用壓縮,忽略其他參數(shù);
expired 如果響應(yīng)頭包含“Expires”字段,且該字段的值禁止緩存,則啟用壓縮;
no-cache 如果響應(yīng)頭包含帶有“ no-cache”參數(shù)的“Cache-Control”字段,則啟用壓縮;
no-store 如果響應(yīng)頭包含帶有“ no-store”參數(shù)的“Cache-Control”字段,則啟用壓縮;
private 如果響應(yīng)頭包含帶有“ private”參數(shù)的“Cache-Control”字段,則啟用壓縮;
no_last_modified 如果響應(yīng)頭不包含“Last-Modified”字段,則啟用壓縮;
no_etag 如果響應(yīng)頭不包含“ETag”字段,則啟用壓縮;
auth 如果請(qǐng)求標(biāo)題包含“Authorization”字段,則啟用壓縮;
any 為所有代理請(qǐng)求啟用壓縮。
gzip_types
語(yǔ)法:gzip_types mime-type
默認(rèn):gzip_types text/html;
功能:指定需要壓縮的響應(yīng)內(nèi)容類(lèi)型,例如text/css application/javascript application/json application/xml分別表示對(duì)css js json xml進(jìn)行壓縮,多個(gè)用空格分開(kāi),*表示所有。注意:text/html類(lèi)型總會(huì)被壓縮,不需要顯式的指定
gzip_vary
語(yǔ)法:gzip_vary on|off
默認(rèn):gzip_vary off;
功能:表示是否添加”Vary: Accept-Encoding”響應(yīng)頭