ETag是URL的TAG,主要是标志URL對象有沒發生改變,用于用戶端的緩存。伺服器産生ETag,并在HTTP響應頭中将其傳送到用戶端,伺服器用它來判斷頁面是否被修改過,如果未修改傳回304,無需傳輸整個對象。
HTTP協定裡ETag是“被請求變量的實體值”。
站點啟用ETag的好處有哪些?
1、Sitemap啟用ETag後,百度就可以快速的知道Sitemap的更新,在内容沒有做更改的情況下,伺服器隻發回304應答頭,對流量的消耗極小,平均每個head在227B大小的通常下,如果24個小時每秒回應的流量消耗僅為18.7M。
2、站長平台對每個站點的
Sitemap主動抓取次數是有上限的,目前并沒有對所有站點開放,如果你的站點Sitemap開啟了ETag,并通過了測試,就可以用較小的流量享受百度及時更新網站的Sitemap的功能,加速了百度收錄網站的内容。
3、網站上的檔案會出現周期性的更改,但主體的内容并沒有改變,僅改變了修改的時間,站長不需要用戶端認為這個檔案被修改了,而重新GET。
4、網站上的某些檔案修改起來會比較麻煩,比如在1秒的期間内,修改了N次,If-Modified-Since能檢查到的粒度是秒級,但是這種修改是無法判斷的。
正常情況下ETag會與Last-Modified一起使用,這樣可利用用戶端的緩存。