1. 程式人生 > >Nginx如何啟用ETag,提高訪問速度

Nginx如何啟用ETag,提高訪問速度

ade 沒有 版本 技術 3.3 服務 開啟 請求 tag

  ETag全稱EntityTags,HTTP協議規格說明中定義“ETag”為“被請求變量的實體值”。

  我們也可以把ETag理解為是一個客戶端與服務器關聯的記號。這個記號告訴客戶端,當前網頁在上次請求之後是否有發生變化,當發生變化時,ETag的值重新計算,並返回200狀態碼。如果沒有變化,返回304狀態碼。從而不會重新加載整個頁面信息。

  以下會告訴你,Nginx如何開啟ETag。

1、確認Nginx版本,命令:Nginx安裝目錄/sbin/nginx–v,版本為1.7.3及更高,繼續步驟2;版本為1.7.3以下,1.3.3及以上,進行步驟3;版本為1.3.3以下,不支持ETag,請升級您的Nginx。

2、確認沒有關閉ETag:打開Nginx的配置文件nginx.conf(默認位置Nginx安裝目錄/conf/),確保其中沒有出現etagoff;,下圖為出現的情況,請將此行刪除。

技術分享圖片

  確認沒有使用ngx_headers_more清除ETag頭:同樣在配置文件中不能出現如下語句的任意一句,如果出現請將其刪除。

技術分享圖片

  重新啟動Nginx,就啟用ETag功能了。

3、查看是否開啟了gzip,且是否和etag出現沖突,出現沖突去步驟4,沒有去步驟2。

  打開Nginx的配置文件nginx.conf(默認位置Nginx安裝目錄/conf/),其中出現gzip on;語句證明開啟了gzip,如圖

技術分享圖片

  開啟gzip時,可能與etag出現沖突,用瀏覽器多次請求此網站的靜態元素,如果只返回200,不返回304,證明存在沖突,請去步驟4;沒有沖突去步驟2。

4、請關閉gzip,即將上一步中的gzip on;改為gzip off;然後去步驟2。

Nginx如何啟用ETag,提高訪問速度