搜尋引擎如何索引收錄網頁

來源:互聯網
上載者:User
關鍵字 搜尋引擎 Google

仲介交易 SEO診斷 淘寶客 雲主機 技術大廳

對SEO(搜尋引擎優化)而言,讓網站內的頁面能夠及時、全面地被搜尋引擎索引、收錄應該說是首要的任務,這是實施其他SEO策略的最基本保證。 ——不過,這也是往往易被高估的一個環節,比如說我們時常可以看到某些人宣稱自己的網站被Google收錄了多少頁面如幾K甚至幾十K等以證明SEO工作的成功。 但客觀地說,網頁僅僅被搜尋引擎索引、收錄是沒有太大的實際意義,往往只能淪為浩如煙海的Internet世界中的殉葬品,更重要的是如何讓網頁出現在針對特定搜索項的SERP(搜尋結果頁面)前幾頁。 ——許多人相信,讓網站內盡可能多的頁面被收錄進搜尋引擎索引資料庫終歸不是一件壞事,網頁越多,暴光的機會也便越大,雖然最終效果如何存在疑問。

Anyway,如果在對網站實施SEO時將重點放在網頁被索引、收錄的速度與效率,當然也無可厚非,而要想實現這一點,需要我們對搜尋引擎如何收錄、索引網頁的機制有所瞭解。 下面我們以Google為例,介紹搜尋引擎收錄、索引網頁的過程,希望能對朋友們有後助益。 ——對其他搜尋引擎如Yahoo!、Live搜索及百度而言,儘管可能在具體細節上存在差別,不過,基本策略應該是類似的。

1、收集待索引網頁的url

Internet上存在的網頁數量絕對是個天文數位,每天新增的網頁也不計其數,搜尋引擎需要首先找到要索引收錄的物件。

    具體到Google而言,雖然對GoogleBot是否存在DeepBot與FreshBot的區別存在爭議——至於是否叫這麼兩個名字更是眾說紛耘,當然,名字本身並不重要—— 至少到目前為止,主流的看法是,在Google的robots中,的確存在著相當部分專門為真正的索引收錄頁頁準備「素材」的robots——在這裡我們姑且仍稱之為FreshBot吧—— 它們的任務便是每天不停地掃描Internet,以發現並維護一個龐大的url清單供DeepBot使用,換言之,當其訪問、讀取其一個網頁時,目的並不在於索引這個網頁,而是找出這個網頁中的所有連結。 ——當然,這樣似乎在效率上存在矛盾,有點不太可信。 不過,我們可以簡單地通過以下方式判斷:FreshBot在掃描網頁時不具備「排它性」,也即是說,位於Google不同的資料中心的多個robots可能在某個很短的時間週期,比如說一天甚至一小時,訪問同一個頁面, 而DeepBot在索引、緩存頁面時則不會出現類似的情況,即Google會限制由某個資料中心的robots來完成這項工作的,而不會出現兩個資料中心同時索引網頁同一個版本的情況,如果這種說法沒有破綻的話, 則似乎可以從伺服器訪問日誌中時常可以看到源自不同IP的GoogleBot在很短的時間內多次訪問同一個網頁證明FreshBot的存在。 因此,有時候發現GoogleBot頻繁訪問網站也不要高興得太早,也許其根本不是在索引網頁而只是在掃描url。

FreshBot記錄的資訊包括網頁的url、Time Stamp(網頁創建或更新的時間戳記), 以及網頁的Head資訊(注:這一點存在爭議,也有不少人相信FreshBot不會去讀取目標網頁資訊的,而是將這部分工作交由DeepBot完成。 不過,筆者傾向于前一種說法,因為在FreshBot向DeepBot提交的url清單中,會將網站設置禁止索引、收錄的頁面排除在外,以提高效率, 而網站進行此類設置時除使用robots.txt外還有相當部分是通過mata標籤中的「noindex」實現的,不讀取目標網頁的head似乎是無法實現這一點的),如果網頁不可訪問,比如說網路中斷或伺服器故障, FreshBot則會記下該url並擇機重試,但在該url可訪問之前,不會將其加入向DeepBot提交的url清單。

總的來說,FreshBot對伺服器頻寬、資源的佔用還是比較小的。 最後,FreshBot對記錄資訊按不同的優先順序進行分類,向DeepBot提交,根據優先順序不同,主要有以下幾種:

A:新建網頁;
B:舊網頁/新的Time Stamp,即存在更新的網頁;
C:使用301/302重定向的網頁;
D:複雜的動態url,如使用多個參數的動態url,Google可能需要附加的工作才能正確分析其內容。 ——隨著Google對動態網頁支援能力的提高,這一分類可能已經取消;
E:其他類型的檔,如指向PDF、DOC檔的連結,對這些檔的索引,也可能需要附加的工作;
F:舊網頁/舊的Time Stamp,即未更新的網頁,注意,這裡的時間戳記不是以Google搜尋結果中顯示的日期為准,而是與Google索引資料庫中的日期比對;
G:錯誤的url,即訪問時返回404回應的頁面;

優先順序按由A至G的順序排列,依次降低。 需要強調的是,這裡所言之優先順序是相對的,比如說同樣是新建網頁,根據指向其的連結品質、數量的不同,優先順序也有著很大的區別,具有源自相關的權威網站連結的網頁具有較高的優先順序。 此外,這裡所指的優先順序僅針對同一網站內部的頁面,事實上,不同網站也有有著不同的優先順序,換言之,對權威網站中的網頁而言,即使其最低優先順序的404 url,也可能比許多其他網站優先順序最高的新建網頁更具優勢。

2、網頁的索引與收錄

接下來才進入真正的索引與收錄網頁過程。 從上面的介紹可以看出,FreshBot提交的url清單是相當龐大的,根據語言、網站位置等不同,對特定網站的索引工作將分配至不同的資料中心完成。 整個索引過程,由於龐大的資料量,可能需要幾周甚至更長時間才能完成。

正如上文所言,DeepBot會首先索引優先順序較高的網站/網頁,優先順序越高,出現在Google索引資料庫及至最終出現在Google搜尋結果頁面中的速度便越快。 對新建網頁而言,只要進入到這個階段,即使整個索引過程沒有完成,相應的網頁便已具備出現在Google索引庫中的可能,相信許多朋友在Google中使用「site:admin5.com」 搜索時常常看到標注為補充結果只顯示網頁url或只顯示網頁標題與url但沒有描述的頁面,此即是處於這一階段網頁的正常結果。 當Google真正讀取、分析、緩存了這個頁面後,其便會從補充結果中逃出而顯示正常的資訊。 ——當然,前提是該網頁具有足夠的連結,特別是來自權威網站的連結,並且,索引庫中沒有與該網頁內容相同或近似的記錄(Duplicate Content過濾)。

對動態url而言,雖然如今Google宣稱在對其處理方面已不存在障礙,不過,可以觀察到的事實仍然顯示動態url出現在補充結果中的幾率遠大於使用靜態url的網頁,往往需要更多、更有價值的連結才能從補充結果中逸出。

而對於上文中之「F」類,即未更新的網頁,DeepBot會將其時間戳記與Google索引資料庫中的日期比對,確認儘管可能搜尋結果中相應頁面資訊未來得及更新但只要索引了最新版本即可——考慮網頁多次更新、修改的情況——;至於「G 」類即404 url,則會查找索引庫中是否存在相應的記錄,如果有,將其刪除。

3、資料中心間的同步

前文我們提到過,DeepBot索引某個網頁時會由特定的資料中心完成,而不會出現多個資料中心同時讀取該網頁,分別獲得網頁最近版本的情況,這樣,在索引過程完成後,便需要一個資料同步過程,將網頁的最新版本在多個資料中心得到更新。

這就是之前著名的Google Dance。 不過,在BigDaddy更新後,資料中心間的同步不再象那樣集中在特定的時間段,而是以一種連續的、時效性更強的方式進行。 儘管不同資料中心間仍存在一定的差異,但差異已經不大,而且,維持的時間也很短。

提高搜尋引擎索引收錄網頁的效率,根據上面的介紹,可以看出,要想讓您的網頁盡可能快、盡可能多地被搜尋引擎收錄,至少應從如下幾方面進行優化:

提高網站反相連結的數量與品質,源自權威網站的連結可以讓您的網站/網頁在第一時間內被搜尋引擎「看到」。 當然,這也是老生常談了。 從上面的介紹可以看出,要提高網頁被搜尋引擎收錄的效率,首先要讓搜尋引擎找到您的網頁,連結是搜尋引擎找到網頁的唯一途徑——「唯一」一詞存在些許爭議,見下面的SiteMaps部分——從這個角度看, 向搜尋引擎提交網站之類的作法沒有必要且沒有意義,相對而言,要想讓您的網站被收錄,獲得外部網站的連結才是根本,同時,高品質的連結也是讓網頁步出補充結果的關鍵因素。

網頁設計要秉持「搜尋引擎友好」的原則,從搜尋引擎spider的視角設計與優化網頁,確保網站的內部連結對搜尋引擎「可見」,相對於獲得外部網站連結的難度,合理規劃的內部連結是提高搜尋引擎索引與收錄效率更經濟、有效的途徑—— 除非網站根本未被搜尋引擎收錄。

如果您的網站使用動態url,或者導航功能表使用JavaScript,那麼,當在網頁收錄方面遇到障礙時,應首先從這裡著手。

使用SiteMaps。 事實上,許多人認為Google取消了FreshBot的一個主要原因便是SiteMaps(xml)協定的廣泛應用,認為這樣只需讀取網站提供的SiteMaps便可得到網頁更新資訊,而不需FreshBot耗時費力地掃描。 這種說法還是有一定道理的,雖然目前不能確定Google究竟直接使用SiteMaps作為DeepBot的索引清單還是用做FreshBot的掃描路標,但SiteMaps能夠提高網站索引收錄的效率則是不爭的事實。 比如說,SEO探索曾做過如下的測試:

兩個網頁,獲得的連結情況相同,一個加入SiteMaps而另一未加入,出現在SiteMaps中的網頁很快被收錄,而另一個頁面則在過了很長時間後才被收錄;

某個孤島頁面,沒有任何指向其的連結,但將其加入SiteMaps一段時間後,同樣被Google索引,只不過,出現在補充結果中。

當然,從儘管網頁未出現在SiteMaps中但仍能被Google索引也可以看出,Google仍然使用FreshBot或類似FreshBot的機制,當然這也容易理解,畢竟仍然有那麼多未使用SiteMaps的網站, Google不可能將其拒之門外。

    有關SiteMaps的詳細介紹,請參考Google SiteMaps:Google的「後門」。 需要指出的是,如今Sitemaps協定已成為行業標準,不獨對Google有效,其他主流搜尋引擎包括Yahoo!、Live搜索及Ask均已提供支援。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.