Nginx數據壓縮配置
1、開始數據壓縮配置的原因
後台返回前端大量的數據,如果不進行壓縮,將導致網路堵塞、佔用大量帶寬。
2、開啟Nginx數據壓縮達到的目標
減少傳輸的數據量,節省帶寬;從而達到降低費用。
Nginx數據壓縮配置:
在Nginx的nginx.conf文件的http模塊添加如下配置項
#gzip壓縮功能配置
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 6;
gzip_proxied any;
gzip_types text/css text/xml image/gif image/jpeg image/png application/javascript image/x-ms-bmp application/pdf text/plain application/json
application/xhtml+xml;gzip_vary on;
gzip_disable "MSIE [1-6].";
配置項說明:
gzip : 決定是否開啟gzip模塊
param:on|off
example:gzip on;
gzip_buffers :
設置gzip申請內存的大小,其作用是按塊大小的倍數申請內存空間param1:int
param2:int(k) 後面單位是kexample: gzip_buffers 4 8k;
gzip_comp_level
: 設置gzip壓縮等級,等級越底壓縮速度越快文件壓縮比越小,反之速度越慢文件壓縮比越大param:1-9
example:gzip_com_level 6;gzip_min_length
: 當返回內容大於此值時才會使用gzip進行壓縮,以K為單位,當值為0時,所有頁面都進行壓縮param:int
example:gzip_min_length 1000;gzip_http_version
: 用於識別http協議的版本,早期的瀏覽器不支持gzip壓縮,用戶會看到亂碼,所以為了支持前期版本加了此選項,目前此項基本可以忽略
param: 1.0|1.1
example:gzip_http_version 1.0gzip_types: 設置需要壓縮的MIME類型,非設置值不進行壓縮 param:text/html|application/x-javascript|text/css|application/xml
example:gzip_types text/html;gzip_proxied : Nginx做為反向代理的時候啟用,
param:off|expired|no-cache|no-sotre|private|no_last_modified|no_etag|auth|any
expample:gzip_proxiedno-cache; off – 關閉所有的代理結果數據壓縮 expired – 啟用壓縮,如果header中包含」Expires」頭信息 no-cache – 啟用壓縮,如果header中包含」Cache-Control:no-cache」頭信息 no-store – 啟用壓縮,如果header中包含」Cache-Control:no-store」頭信息 private – 啟用壓縮,如果header中包含」Cache-Control:private」頭信息 no_last_modified – 啟用壓縮,如果header中包含」Last_Modified」頭信息 no_etag – 啟用壓縮,如果header中包含「ETag」頭信息 auth – 啟用壓縮,如果header中包含「Authorization」頭信息 any – 無條件壓縮所有結果數據gzip_vary : 加上 http 頭信息Vary: Accept-Encoding給後端代理伺服器識別是否啟用 gzip 壓縮。
param:on|off
expample:gzip_vary on;
gzip_disable : 根據 「User-Agent」 頭來關閉 Gzip,可用正則表達式。
param:regex(正則表達式)
example:gzip_disable "MSIE [1-6].";
備註:對http/https返回的數據都進行了明顯的壓縮。
推薦閱讀:
※actor模型跟nginx中worker_process的相同和差異有哪些?
※Nginx基本配置備忘
※nginx快速入門之基本原理篇
※CentOS 7 YUM 10分鐘快速安裝 LNMP 環
TAG:Nginx |