日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Nginx >内容正文

Nginx

Nginx 笔记与总结(13)Nginx 的 gzip 压缩

發布時間:2023/12/19 Nginx 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Nginx 笔记与总结(13)Nginx 的 gzip 压缩 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用 FireFox(40.0)訪問博客園(http://www.cnblogs.com/),觀察 http 頭信息

請求頭信息:

Accept-Encoding gzip, deflate 表示瀏覽器接受的壓縮方式有 gzip 和 deflate

?

響應頭信息:

Content-Encoding gzip 表示服務器返回內容的壓縮方式是 gzip

?

注意:圖片/mp3 這樣的二進制文件不必壓縮,因為壓縮比較小(而且壓縮需要消耗 CPU 資源)

?

?

在 nginx 下使用 gzip

nginx gzip 相關語法見:http://nginx.org/en/docs/http/ngx_http_gzip_module.html

gzip 配置的常見參數:

gzip on|off是否開啟 gzip
gzip_buffers 32 4k|16 8k緩沖(壓縮在內存中緩沖幾塊(32,16),每塊的大小(4k,8k))
gzip_comp_level [1-9]壓縮級別(級別越高,壓得越小,同時越消耗 CPU 計算資源)。推薦 6
gzip_disable正則匹配。哪些 URI 不進行 gzip 壓縮
gzip_min_length 200開始壓縮的最小長度(單位字節),小于該長度就不壓縮
gzip_http_version 1.0|1.1開始壓縮的 http 版本協議(可以不設置,默認 1.1)
gzip_proxied設置請求代理服務器如何緩存
gzip_types text/plain application/xml對哪些類型的文件使用壓縮,如 html(默認)、xml、css、js
gzip_vary on|off是否傳輸 gzip 壓縮標志

?

其中 gzip_type 的參數要使用文件 MIME 類型,可以在 /usr/local/nginx/conf/mime.type 文件中查看

[root@localhost nginx]# cat conf/mime.typestypes {text/html html htm shtml;text/css css;text/xml xml;image/gif gif;image/jpeg jpeg jpg;application/javascript js;application/atom+xml atom;application/rss+xml rss;text/mathml mml;text/plain txt;text/vnd.sun.j2me.app-descriptor jad;text/vnd.wap.wml wml;text/x-component htc;image/png png;image/tiff tif tiff;image/vnd.wap.wbmp wbmp;image/x-icon ico;image/x-jng jng;image/x-ms-bmp bmp;image/svg+xml svg svgz;image/webp webp;application/font-woff woff;application/java-archive jar war ear;application/json json;application/mac-binhex40 hqx;application/msword doc;application/pdf pdf;application/postscript ps eps ai;application/rtf rtf;application/vnd.apple.mpegurl m3u8;application/vnd.ms-excel xls;application/vnd.ms-fontobject eot;application/vnd.ms-powerpoint ppt;application/vnd.wap.wmlc wmlc;application/vnd.google-earth.kml+xml kml;application/vnd.google-earth.kmz kmz;application/x-7z-compressed 7z;application/x-cocoa cco;application/x-java-archive-diff jardiff;application/x-java-jnlp-file jnlp;application/x-makeself run;application/x-perl pl pm;application/x-pilot prc pdb;application/x-rar-compressed rar;application/x-redhat-package-manager rpm;application/x-sea sea;application/x-shockwave-flash swf;application/x-stuffit sit;application/x-tcl tcl tk;application/x-x509-ca-cert der pem crt;application/x-xpinstall xpi;application/xhtml+xml xhtml;application/xspf+xml xspf;application/zip zip;application/octet-stream bin exe dll;application/octet-stream deb;application/octet-stream dmg;application/octet-stream iso img;application/octet-stream msi msp msm;application/vnd.openxmlformats-officedocument.wordprocessingml.document docx;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx;application/vnd.openxmlformats-officedocument.presentationml.presentation pptx;audio/midi mid midi kar;audio/mpeg mp3;audio/ogg ogg;audio/x-m4a m4a;audio/x-realaudio ra;video/3gpp 3gpp 3gp;video/mp2t ts;video/mp4 mp4;video/mpeg mpeg mpg;video/quicktime mov;video/webm webm;video/x-flv flv;video/x-m4v m4v;video/x-mng mng;video/x-ms-asf asx asf;video/x-ms-wmv wmv;video/x-msvideo avi; } mime.types

?

在 /usr/local/nginx/conf/nginx.conf 中開始配置:

[root@localhost nginx]# vim conf/nginx.conf

gzip 的上下文(context)可以是 http、server、location、if in location

如果針對針對整個網站發揮作用,就在 server 段中進行配置:

server {listen 80;server_name localhost;#gzip gzip on;gzip_buffers 32 4k;gzip_comp_level 6;gzip_min_length 200;gzip_types text/css text/xml application/x-javascript;

平滑重啟 nginx。

?

此時訪問服務器上 ecshop 項目的某個 URL,觀察 http 響應頭:

由于是分塊傳輸,因此看不到 Content-Length。

?

此時再訪問一個內容較小的頁面(內容長度小于 200 字節),觀察 http 響應頭:

此時內容沒有被 gzip 壓縮。

?

在項目中 gzip_min_length 可設置較大值,如 4000(4k)。

轉載于:https://www.cnblogs.com/dee0912/p/4731347.html

總結

以上是生活随笔為你收集整理的Nginx 笔记与总结(13)Nginx 的 gzip 压缩的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。