Nginx自帶的有gzip模塊 http://wiki.nginx.org/NginxChsHttpGzipModule ,這個模塊支持在線實時壓縮輸出數據流。經過良好的配置優化,可以大幅的提升網站的輸出效率。
__使用范例__
代碼如下:
gzip on;
gzip_min_length 1000;
gzip_proxied expired no-cache no-store private auth;
gzip_types text/plain application/xml;
內置變量 $gzip_ratio 可以獲取到gzip的壓縮比率
指令:
代碼如下:
[#gzip gzip]
[#gzip_buffers gzip_buffers]
[#gzip_comp_level gzip_comp_level]
[#gzip_min_length gzip_min_length]
[#gzip_http_version gzip_http_version]
[#gzip_proxied gzip_proxied]
[#gzip_types gzip_types]
gzip
語法: gzip on|off
默認值: gzip off
作用域: http, server, location, if (x) location
開啟或者關閉gzip模塊
gzip_buffers
語法: gzip_buffers number size
默認值: gzip_buffers 4 4k/8k
作用域: http, server, location
設置系統獲取幾個單位的緩存用于存儲gzip的壓縮結果數據流。 例如 4 4k 代表以4k為單位,按照原始數據大小以4k為單位的4倍申請內存。 4 8k 代表以8k為單位,按照原始數據大小以8k為單位的4倍申請內存。
如果沒有設置,默認值是申請跟原始數據相同大小的內存空間去存儲gzip壓縮結果。
gzip_comp_level
語法: gzip_comp_level 1..9
默認值: gzip_comp_level 1
作用域: http, server, location
gzip壓縮比,1 壓縮比最小處理速度最快,9 壓縮比最大但處理最慢(傳輸快但比較消耗cpu)。
gzip_min_length
語法: gzip_min_length length
默認值: gzip_min_length 0
作用域: http, server, location
設置允許壓縮的頁面最小字節數,頁面字節數從header頭中的Content-Length中進行獲取。
默認值是0,不管頁面多大都壓縮。
建議設置成大于1k的字節數,小于1k可能會越壓越大。 即: gzip_min_length 1024
gzip_http_version
語法: gzip_http_version 1.0|1.1
默認值: gzip_http_version 1.1
作用域: http, server, location
識別http的協議版本。由于早期的一些瀏覽器或者http客戶端,可能不支持gzip自解壓,用戶就會看到亂碼,所以做一些判斷還是有必要的。 注:21世紀都來了,現在除了類似于百度的蜘蛛之類的東西不支持自解壓,99.99%的瀏覽器基本上都支持gzip解壓了,所以可以不用設這個值,保持系統默認即可。
gzip_proxied
語法: gzip_proxied [off|expired|no-cache|no-store|private|no_last_modified|no_etag|auth|any] …
默認值: gzip_proxied off
作用域: http, server, location
Nginx作為反向代理的時候啟用,開啟或者關閉后端服務器返回的結果,匹配的前提是后端服務器必須要返回包含”Via”的 header頭。
off – 關閉所有的代理結果數據的壓縮
新聞熱點
疑難解答