gzip是GNU zip的縮寫,它是一個GNU自由軟件的文件壓縮程序,可以極大的加速網站.有時壓縮比率高到80%,近來測試了一下,最少都有40%以上,還是相當不錯的。大道至簡,知易行難,悟者大成。
修改nginx配置文件
vi /usr/local/nginx/conf/nginx.conf
找到gzip配置位置進行修改:
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 text/javascript application/x-httpd-php p_w_picpath/jpeg p_w_picpath/gif p_w_picpath/png;
gzip_vary off;
gzip_disable "MSIE [1-6]\.";
參數解釋:
第1行:開啓Gzip
第2行:不壓縮臨界值,大於1K的才壓縮,一般不用改
第3行:buffer,就是,嗯,算了不解釋了,不用改
第4行:用了反向代理的話,末端通信是HTTP/1.0,有需求的應該也不用看我這科普文了;有這句的話註釋了就行了,默認是HTTP/1.1
第5行:壓縮級別,1-10,數字越大壓縮的越好,時間也越長,看心情隨便改吧
第6行:進行壓縮的文件類型,缺啥補啥就行了,JavaScript有兩種寫法,最好都寫上吧,總有人抱怨js文件沒有壓縮,其實多寫一種格式就行了
第7行:跟Squid等緩存服務有關,on的話會在Header裏增加"Vary: Accept-Encoding",我不需要這玩意,自己對照情況看着辦吧
第8行:IE6對Gzip不怎麼友好,不給它Gzip了.
重啓nginx
/usr/local/nginx/sbin/nginx -s reload
用curl測試Gzip是否成功開啓
curl -I -H "Accept-Encoding: gzip, deflate" "localhost/xx.css"
HTTP/1.1 200 OK
Server: nginx/1.0.15
Date: Sun, 26 Aug 2012 18:21:25 GMT
Content-Type: text/css
Last-Modified: Sun, 26 Aug 2012 15:17:07 GMT
Connection: keep-alive
Expires: Mon, 27 Aug 2012 06:21:25 GMT
Cache-Control: max-age=43200
Content-Encoding: gzip
如果顯示以上信息代表啓用成功~