服務端給客戶端響應時若啟用壓縮功能,可以減少傳輸時所需的頻寬,大大提高響應速度。
如上圖所示,nginx在把響應報文傳送到客戶端之前,可以對靜態資源檔案進行壓縮,這樣傳輸檔案的大小變得很小,傳輸速度會大幅度提高,之後瀏覽器再進行解壓,得到所請求的靜態資源。
先直接上配置檔案吧,具體配置如下所示:
}}可以看到我的配置檔案裡分別配置了靜態資源的壓縮和txt檔案的靜態資源壓縮。這裡是為了之後進行對比,首先我們來分別說明一下每行配置語句的意義。
gzip on; #顧名思義,是開啟gzip壓縮的配置
gzip_http_version 1.1; #這裡指的是gzip應用於http協議的版本,現絕大多數都是http1.1,配置為1.1即可。
gzip_comp_level 2;#這裡配置的是gzip的壓縮倍率,預設是1,可以配置0-9,但壓縮倍率並不是越大越好,因為壓縮和解壓操作時非常耗費cpu資源的,設定的過高會導致壓縮和解壓縮的時間變得很長,反而會降低響應時間。
gzip_types #配置需要壓縮的靜態資源檔案型別。
話不多說先上圖,我們來分別看一下效果吧。
可以看到,resource size為578kb,壓縮後經過網路傳輸的大小依舊為578kb。這是什麼原因?
其實也很簡單,jpg和png本來就是一種壓縮格式,也就是說檔案本來就已經被壓縮過了,自然再進行壓縮也就沒有效果了。
那我們再來看一下對txt檔案的壓縮效果:
可以看到壓縮前的大小是1.9mb,壓縮後經過網路傳輸的大小為29.7kb,差距是非常的明顯的。再上一張壓縮前的效果來對比一下壓縮時間吧
可以看到gzip開啟前的響應時間是14.33秒,而壓縮開啟後僅為幾百毫秒,對響應速度的提公升效果是非常顯著的。
nginx配置gzip壓縮
一 配置引數的詳細介紹 二 大眾的引數配置如下 開啟gzip壓縮 gzip on http的協議版本 ie版本1 6不支援gzip壓縮,關閉 gzip disable msie 1 6 需要壓縮的檔案格式 text html缺省會壓縮,不用新增 設定壓縮緩衝區大小,此處設定為4個8k記憶體作為壓縮結...
Nginx配置 啟用gzip壓縮
1.功能描述 2.實現 3.最終效果 4.參考文件 版本 nginx 1.16.1。引數詳解 開啟或關閉gzip模組 實時壓縮輸出 gzip on off 開啟或關閉gzip靜態檔案處理模組 提前壓縮,需要nginx中新增上http gzip static module模組 gzip static ...
Nginx 系列 04 配置gzip壓縮
一 配置引數的詳細介紹 開啟gzip壓縮 gzip on http的協議版本 ie版本1 6不支援gzip壓縮,關閉 gzip disable msie 1 6 需要壓縮的檔案格式 text html缺省會壓縮,不用新增 設定壓縮緩衝區大小,此處設定為4個8k記憶體作為壓縮結果流快取 gzip bu...