Nginx開啓gzip壓縮功能

在Nginx安裝完成以後,咱們能夠開啓Gzip壓縮功能,這裏Nginx默認只能對text/html類型的文件進行壓縮。下面的指令爲開啓Gzip的指令:javascript

gzip on;
gzip_http_version 1.0;
gzip_disable "MSIE [1-6].";
gzip_types text/plain application/x-javascript text/css text/javascript;

若是要可以是Nginx開啓圖片壓縮功能,在配置文件中添加以下代碼:php

gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php image/jpeg image/gif image/png;

這裏須要注意一下:css

1.在gzip_http_version的默認值是1.1,就是說對HTTP/1.1協議的請求才會進行gzip壓縮。
若是使用了proxy_pass進行反向代理,那麼nginx和後端的upstream server之間是用HTTP/1.0協議通訊的
若是使用nginx經過反向代理作Cache Server,前端的nginx沒有開啓gzip,且後端的nginx上未設置gzip_http_version爲1.0,那麼Cache的url將不會被gzip壓縮。html

2.gzip_disable的設置是禁用IE6的gzip壓縮
IE6的某些版本對gzip的壓縮支持不是很好,會形成頁面的假死。
對img進行gzip後會形成IE6的假死,把對img的gzip壓縮去掉後就正常了。
爲了確保其它的IE6版本不出問題,因此加上了gzip_disable配置項。前端

gzip_min_length 1000;

設置容許壓縮的頁面最小字節數,頁面字節數從header頭中的Content-Length中進行獲取。java

默認值是0,無論頁面多大都壓縮。
建議設置成大於1k的字節數,小於1k可能會越壓越大。 即: gzip_min_length 1024nginx

gzip_proxied expired no-cache no-store private auth;

Nginx做爲反向代理的時候啓用,開啓或者關閉後端服務器返回的結果,匹配的前提是後端服務器必需要返回包含」Via」的 header頭。後端

 

自用版以下服務器

 

gzip on;  
gzip_min_length  1k;  
gzip_buffers     4 16k;  
gzip_http_version 1.0;  
gzip_comp_level 2;  
gzip_types       text/plain application/x-javascript text/css application/xml application/x-httpd-php image/jpeg image/gif image/png;  
gzip_vary on; 
gzip_disable "MSIE [1-6]\.";
相關文章
相關標籤/搜索