中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

ETag使用效果對(duì)比及經(jīng)驗(yàn)分享(附ETag配置教程)

2019-03-26    來源:站長學(xué)院

容器云強(qiáng)勢上線!快速搭建集群,上萬Linux鏡像隨意使用

提起向百度提交數(shù)據(jù),大家基本都會(huì)想到sitemap,最近又推出的etag是什么東東?真的能有效果嗎?

sitemap是解決網(wǎng)站收錄至關(guān)重要的途徑之一,而通常sitemap的更新都不是很及時(shí),并且體量都相對(duì)較大,此時(shí)也消耗了相應(yīng)的網(wǎng)站流量及帶寬。而ETag可以用來標(biāo)示網(wǎng)頁是否發(fā)生了變化,如果沒有變化返回304狀態(tài)碼,就不用再重新傳輸整個(gè)網(wǎng)頁了。

在我們的sitemap配置了ETag之后,對(duì)日志一段時(shí)間的監(jiān)測發(fā)現(xiàn),其sitemap響應(yīng)時(shí)間以及耗時(shí)的平均時(shí)間均大幅度下降,爬蟲訪問sitemap文件的次數(shù)有所增加,對(duì)于收錄而言,通過圖表也能看出相對(duì)的增長曲線,我們的整體收錄率大致提升范圍在2% – 5%左右。所以在此,強(qiáng)烈建議大家設(shè)置sitemap的ETag,簡簡單單的一個(gè)小動(dòng)作就能看到相對(duì)明顯的效果還是很不錯(cuò)的。

ETag全稱EntityTags,HTTP協(xié)議規(guī)格說明中定義“ETag”為“被請(qǐng)求變量的實(shí)體值”。我們也可以把ETag理解為是一個(gè)客戶端與服務(wù)器關(guān)聯(lián)的記號(hào)。這個(gè)記號(hào)告訴客戶端,當(dāng)前網(wǎng)頁在上次請(qǐng)求之后是否有發(fā)生變化,當(dāng)發(fā)生變化時(shí),ETag的值重新計(jì)算,并返回200狀態(tài)碼。如果沒有變化,返回304狀態(tài)碼。從而不會(huì)重新加載整個(gè)頁面信息。

如下,是我司站點(diǎn)的sitemap文件的頭信息:

我們看到,ETag中包含了一連串的數(shù)據(jù),這就是計(jì)算出來的一個(gè)值,如果它發(fā)生變化,說明其頁面內(nèi)容一定發(fā)生了變化。如果頁面沒有發(fā)生變化時(shí),頭信息應(yīng)該如下: 

在我們與技術(shù)溝通配置ETag時(shí),需要通過此種方式進(jìn)行驗(yàn)證。第一次訪問200狀態(tài)碼,有ETag的一行文本,再次訪問該頁面時(shí),狀態(tài)碼為304,ETag的值不變。至此,我們就可以確定ETag配置成功。

另外,sitemap啟用Etag后:

1、百度可以更及時(shí)地響應(yīng)sitemap的更新;

2、頁面沒有更新的情況下,對(duì)流量的消耗極;

3、百度更加及時(shí)的抓取sitemap,便于更好的收錄;

但多數(shù)情況下,ETag會(huì)與Last-Modified一起使用,這樣可利用客戶端(例如瀏覽器)的緩存。因?yàn)榉⻊?wù)器首先產(chǎn)生Last-Modified/Etag標(biāo)記,服務(wù)器可在稍后使用它來判斷頁面是否已經(jīng)被修改。本質(zhì)上,客戶端通過將該記號(hào)傳回服務(wù)器要求服務(wù)器驗(yàn)證其(客戶端)緩存。

站點(diǎn)服務(wù)器如何配置ETag?

最好是對(duì)全站進(jìn)行配置ETag,這樣對(duì)于站點(diǎn)而言,在帶寬消耗、爬蟲抓取上的提升還是會(huì)有很大收益的。

一、Apache  

Apache根據(jù)配置文件中的配置來設(shè)置Etag值,默認(rèn)的Apache的FileEtag設(shè)置為:

FileEtagINode Mtime Size

也就是根據(jù)這三個(gè)屬性來生成Etag值,他們之間通過一些算法來實(shí)現(xiàn),并輸出成hex的格式,相鄰屬性之間用-分隔,比如:"2e681a-6-5d044840",這里面的三個(gè)段,分別代表了INode,MTime,Size根據(jù)算法算出的值的Hex格式,可以改變Apache的FileEtag設(shè)置,比如設(shè)置成FileEtagSize,那么得到的Etag可能為:"6",設(shè)置了幾個(gè)段,Etag值就有幾個(gè)段。

詳細(xì)配置:

步驟1

在要啟用ETag的目錄下增加.htaccess文件并在其中增加一行,如圖:FileETagMTime Size

以覆蓋默認(rèn)的Innode MTime Size的ETag,因?yàn)槟J(rèn)的ETag使用到的Innode會(huì)導(dǎo)致相同的文件在分布式服務(wù)器上產(chǎn)生的ETag不同。

步驟2

如果.htacces文件已經(jīng)存在,請(qǐng)確保要啟用ETag的目錄/.htacces文件中沒有FileETagNone。如果存在FileETag None,請(qǐng)刪去該行。

檢查沒有用mod_headers將ETag除去,即httpd.conf文件中沒有出現(xiàn)下面的語句,

LoadModuleheaders_module modules/mod_headers.so 

Headerunset ETag

如果出現(xiàn)如圖情況,請(qǐng)刪除Headerunset ETag這一行。

步驟3

重新啟動(dòng)httpd,就啟用ETag了。

二、Nginx

步驟1

確認(rèn)Nginx版本,命令:Nginx安裝目錄/sbin/nginx–v,

版本為1.7.3及更高,繼續(xù)步驟2;版本為1.7.3以下,1.3.3及以上,進(jìn)行步驟3;版本為1.3.3以下,不支持ETag,請(qǐng)升級(jí)您的Nginx。

步驟2

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

確認(rèn)沒有使用ngx_headers_more清除ETag頭:同樣在配置文件中不能出現(xiàn)如下語句的任意一句,如果出現(xiàn)請(qǐng)將其刪除。

重新啟動(dòng)Nginx,就啟用ETag功能了。

步驟3

查看是否開啟了gzip,且是否和etag出現(xiàn)沖突,出現(xiàn)沖突去步驟4,沒有去步驟2。

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

開啟gzip時(shí),可能與etag出現(xiàn)沖突,用瀏覽器多次請(qǐng)求此網(wǎng)站的靜態(tài)元素,如果只返回200,不返回304,證明存在沖突,請(qǐng)去步驟4;沒有沖突去步驟2。

標(biāo)簽: ETag是什么 ETag標(biāo)準(zhǔn) ETag響應(yīng)頭 

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:教你如何通過百度知道引來大量流量

下一篇:致新手:先了解搜索引擎知識(shí) 再做SEO