大型網站擁有者的檢索預算管理指南

本指南說明如何為規模龐大且更新頻繁的網站進行 Google 檢索最佳化調整。

如果您的網站沒有大量會經常變動的網頁,或者網頁檢索作業看起來都是在發布網頁的同一天完成,那就不需要閱讀這份指南,只需要隨時保持 Sitemap 為最新狀態,並定期檢查索引涵蓋範圍即可。

如果你的內容已上線一段時間,但卻從未編入索引,這屬於不一樣的問題,請改用網址檢查工具找出網頁未編入索引的原因。

本指南適用對象

這份進階指南適用於下列網站:

  • 擁有超過 100 萬個不重複網頁,且內容變動頻率適中 (每週一次) 的大型網站
  • 擁有超過 1 萬個不重複網頁,且內容變動極為頻繁 (每天) 的中型或大型網站
  • 網站中有大量網址在 Search Console 中已分類為「已找到 - 目前尚未建立索引

檢索的基本原理

網海無垠,即使是 Google 也無法探索每個可用網址,並為其一一建立索引。因此,Googlebot 檢索每個網站所能用的時間有限,而 Google 針對檢索一個網站所能投入的時間和資源,通常就稱為「檢索預算」。請注意,不是網站上所有「完成檢索」的內容都一定能「建立索引」;Google 必須對每個網頁進行評估與整合,才能確認是否要在檢索網頁後建立索引。

檢索預算多寡取決於兩個主要元素:「檢索容量上限」和「檢索需求」

檢索容量上限

Googlebot 檢索網站時,並不希望對伺服器造成負擔。為了達成這項目標,Googlebot 會計算「檢索容量上限」,這是指 Googlebot 在檢索網站時可以使用的最大同時連線數量,以及擷取作業之間的延遲時間。計算出來的容量上限要能讓 Googlebot 為所有重要內容建立索引,但又不會讓伺服器超過負荷。

檢索容量上限可能因下列因素而有所起伏:

  • 檢索健康狀態:如果網站連續一陣子的回應速度都很快,檢索容量上限就會提高,讓 Googlebot 可使用更多連線進行檢索。如果網站的回應速度變慢或出現伺服器錯誤,檢索容量上限則會降低,Googlebot 的檢索次數也會隨之減少。
  • 網站擁有者在 Search Console 中設定的限制網站擁有者可以選擇是否調降 Googlebot 對於自家網站的檢索頻率。不過請注意,設定較高的上限並不會使檢索次數自動增加。
  • Google 的檢索能力上限:Google 擁有許多硬體資源,但數量並非無限,我們仍然需要依據現有資源取捨分配。

檢索需求

一般來說,Google 會將要檢索的網站與其他網站進行比較,依據網站規模、更新頻率、網頁品質和關聯性,分配檢索需要的時間。

以下是決定檢索需求的幾項重要因素:

  • 系統對網址庫的判斷:Googlebot 會在未經您說明的情況下,嘗試檢索您網站上所有或大部分的已知網址;如果這當中存在許多重複網址,或者因為其他原因根本不需要檢索 (例如網址已移除、內容不重要等等),等於 Google 浪費許多時間檢索您的網站。這也是您最能主動控制的因素。
  • 熱門程度:為了盡可能在索引中提供最新的資訊,在網際網路上越熱門的網址,其檢索頻率也會越高。
  • 過時程度:我們的系統希望能以足夠的頻率重新檢索文件,以便及時反映任何變更。

此外,關聯到整個網站的事件 (例如網站遷移) 可能會使檢索需求增加,因為我們需要為新網址中的內容重新建立索引。

總結

綜合檢索容量和檢索需求兩個層面來看,Google 會將網站檢索預算視為「Googlebot 有能力且想要檢索的網址數量集合」。假如檢索需求較低,即使未達檢索容量上限,Googlebot 也會降低對網站的檢索頻率。

最佳做法

請遵循下列最佳做法,盡可能提升檢索效率:

  • 管理網址庫:使用適當的工具告訴 Google 要檢索哪些網頁,以及不要檢索哪些網頁。如果 Google 花費太多時間檢索不適合建立索引的網址,可能會判定網站的其他部分不值得花時間查看,也不會提高預算來檢索網站。
    • 整合重複的內容排除重複內容,讓系統能著重於檢索獨特的內容,而不只是網址不重複而已。
    • 透過 robots.txt 禁止系統檢索網址 有些網頁對使用者而言可能很重要,但您並不希望這些網頁出現在搜尋結果中,例如會重複連結網頁資訊的無限捲動頁面,或是相同網頁的不同排序版本。如果無法依照清單第一條所說的方式進行整合,請使用 robots.txt 封鎖這些對搜尋而言不重要的網頁。透過 robots.txt 封鎖網址會大幅降低系統為網址建立索引的機率。
    • 如果網頁已永久移除,請傳回 404410 狀態碼。 Google 不會忘記已知的網址,但 404 狀態碼是很強烈的信號,會告訴 Google 不要再檢索該網址。相較來說,系統會在檢索佇列中將遭到封鎖的網址保留較長一段時間,並在解除封鎖後重新進行檢索。
    • 排除 soft 404 錯誤系統會繼續檢索 soft 404 網頁,白白浪費你的預算。請查看索引涵蓋範圍報表是否有 soft 404 錯誤。
    • 隨時保持 Sitemap 為最新狀態。Google 會定期讀取 Sitemap,因此請務必在其中納入您希望 Google 檢索的所有內容。如果網站內容已經更新,建議加入 <lastmod> 標記。
    • 避免使用過長的重新導向鏈結,因為這種做法會對檢索造成負面影響。
  • 確保網頁擁有良好的載入效率如果 Google 能夠以更快的速度載入並轉譯網頁,或許就能讀取網站中的更多內容。
  • 監控網站的檢索作業 請監控網站在檢索期間是否有任何可用性問題,並設法讓檢索作業更有效率。

監控網站的檢索和索引作業

以下幾個重要步驟可協助監控網站的檢索情形:

  1. 查看 Googlebot 是否在網站上遇到可用性問題
  2. 查看是否有應檢索而未檢索的網頁
  3. 查看網站中是否有任何部分需要加快檢索速度
  4. 改善網站的檢索效率
  5. 處理網站的過度檢索問題

查看 Googlebot 是否在網站上遇到可用性問題

改善網站可用性不一定能提高檢索預算,Google 會依據前述的檢索需求決定最佳檢索頻率。不過,可用性問題確實會造成 Google 無法依據需求檢索您的網站。

診斷方式:

透過檢索統計資料報告查看網站的 Googlebot 檢索記錄。這份報告會顯示 Google 在網站上遇到可用性問題的時間。如果報告顯示網站出現可用性錯誤或警告,請查看「主機可用性」圖表,找到 Googlebot 要求次數超過紅色限制線的部分,然後按一下圖表,查看無法檢索的網址,嘗試找出這些網址與網站發生的問題之間有何關聯。

處理方式:

  • 請參閱檢索統計資料報告的說明文件,瞭解如何找出並解決部分可用性問題。
  • 封鎖不希望受到檢索的網頁 (請參閱管理網址庫一節)。
  • 加快網頁的載入和轉譯速度 (請參閱改善網站的檢索效率一節)。
  • 提升伺服器負載量。如果覺得 Google 在檢索網站時已持續觸及伺服器負載量的上限,但卻還有其他重要網址尚未受到檢索或更新,那麼增加伺服器資源或許能讓 Google 檢索您網站上的更多網頁。請查看檢索統計資料報告中的主機可用性記錄,瞭解 Google 過往在執行檢索作業時是否經常超出上限。如果是的話,請先提高伺服器資源一個月,並觀察這段期間的檢索要求數量是否有所提升。

查看網站中是否有應檢索而未檢索的部分

Google 會盡可能在網站上停留足夠的時間,以便找到所有優質且對使用者有價值的內容,並為這些內容建立索引。如果您認為 Googlebot 漏掉某個重要內容,可能是因為 Googlebot 不知道該內容存在、該內容已對 Google 封鎖,或者是網站的可用性限制了 Google 的存取 (也有可能是因為 Google 試圖避免您的網站超載)。

診斷方式:

Search Console 不會針對您的網站提供可依據網址或路徑進行篩選的檢索記錄,但您可以檢查網站記錄,確認 Googlebot 是否已檢索某個特定網址。不過,這些完成檢索的網址是否已建立索引,則不在本文的討論範圍。

提醒您,對大部分網站而言,Googlebot 至少要花上數天的時間才會注意到新網頁的存在。除了新聞網站這類有時效性的網站之外,大部分網站都不應預期新網址能在發布的同一天受到檢索。

處理方式:

當網頁新增至網站後,如果未在合理的時間內受到檢索,可能是因為:Google 不知道這些網頁存在、網頁內容遭到封鎖、網站已達到伺服器負載量上限,或者您用完了檢索預算

  1. 告訴 Google 您增加了新網頁:更新 Sitemap 以反映這些新的網址。
  2. 檢查 robots.txt 規則,確認你並未意外封鎖了網頁。
  3. 重新審視檢索的優先順序 (也就是謹慎使用檢索預算)。請妥善管理網址庫,並提升網站的檢索效率
  4. 確認伺服器負載量並未用盡。如果 Googlebot 偵測到伺服器無法回應檢索要求,便會縮減檢索次數。

請注意,如果網頁的內容價值低落或者沒有使用者要求存取該類內容,那麼即使網頁已檢索完成,也不會顯示在搜尋結果中。

查看檢索更新內容的速度是否夠迅速

如果我們遺漏了網站上的新網頁或更新後的網頁,可能是因為我們尚未發現這些網頁,或是還未注意到網頁已經更新。您可以採取下列方式,協助我們注意到網頁的更新內容。

請注意,Google 致力於以合理且及時的方式查看網頁並建立索引,對大多數網站而言這些作業至少需要三天的時間。除非是新聞網站,或者網站擁有其他高價值的時效性內容,否則 Google 不會在網頁發布的同一天為其建立索引。

診斷方式:

請檢查網站記錄,查看 Googlebot 檢索特定網址的時間。

如要瞭解索引的建立日期,請使用網址檢查工具,或透過 Google 搜尋您所更新的網址。

處理方式:

建議做法:

  • 如果網站有新聞內容,請使用新聞 Sitemap。張貼或變更 Sitemap 時,請透過連線偵測 (ping) 工具通知 Google
  • 在 Sitemap 中使用 <lastmod> 標記,指出已建立索引的網址在什麼時候更新了內容。
  • 使用簡單的網址架構,協助 Google 順利找到您的網頁。
  • 提供標準的可檢索 <a> 連結,協助 Google 順利找到您的網頁。

請避免:

  • 每天多次提交相同且無變動的 Sitemap。
  • 預期 Googlebot 會檢索 Sitemap 中的所有內容或立即進行檢索。Sitemap 是向 Googlebot 提出實用的建議做法,但並非必要。
  • 在 Sitemap 中加入不想在 Google 搜尋中顯示的網址。這麼做可能會讓檢索預算浪費在您不希望建立索引的網頁上。

改善網站的檢索效率

提升網頁載入速度

Google 的檢索成效受限於頻寬、時間和 Googlebot 執行個體的可用性。如果您的伺服器能更迅速地回應要求,或許我們就能在您的網站上檢索更多網頁。話雖如此,由於 Google 只希望檢索優質的網頁內容,因此單方面加快劣質網頁的載入速度,也無法讓 Googlebot 在網站上檢索更多網頁;相反地,如果我們認為您的網站還有其他優質內容,也可能會提高檢索預算來檢索這些內容。

您可以透過以下方式為網頁和資源進行檢索作業的最佳化調整:

  • 使用 robots.txt 禁止 Googlebot 載入不重要的大型資源。請務必只封鎖非關鍵性的資源,例如裝飾性的圖片,這類資源不會影響 Googlebot 瞭解網頁內容的意義。
  • 確保網頁能迅速載入。
  • 留意不要使用過長的重新導向鏈結,這會對檢索作業造成負面影響。
  • 回應伺服器要求所花費的時間以及轉譯網頁所需的時間,兩者都相當重要,這其中也包括圖片和指令碼等內嵌資源的載入和執行時間。請特別留意需要建立索引的大型資源或慢速資源。

使用 HTTP 狀態碼指定內容變更

一般來說,Google 支援使用 If-Modified-SinceIf-None-Match HTTP 要求標頭進行檢索。Google 檢索器不會傳送所有檢索嘗試的標頭;會視要求的用途而定 (舉例來說,AdsBot 較有可能設定 If-Modified-SinceIf-None-Match HTTP 要求標頭)。如果檢索器傳送 If-Modified-Since 標頭,標頭值就是上次檢索內容的日期和時間。根據這個值,伺服器可能會選擇傳回沒有回應主體的 304 (Not Modified) HTTP 狀態碼,在這種情況下,Google 會重複使用上次檢索的內容版本。如果內容晚於檢索器在 If-Modified-Since 標頭中指定的日期,伺服器會傳回含有回應主體的 200 (OK) HTTP 狀態碼。

如果 Googlebot 上次造訪網址後內容並未變更,那麼不論要求標頭為何,您都可以為任何 Googlebot 要求傳送 304 (Not Modified) HTTP 狀態碼及無回應主體。這樣可以節省伺服器處理時間和資源,進而間接提高檢索效率。

隱藏不想在搜尋結果中顯示的網址

如果將伺服器資源浪費在不必要的網頁上,會使得真正有價值的網頁錯失檢索機會,導致 Googlebot 發掘網站上優質新內容或更新版內容的進度嚴重延遲。

如果 Google 搜尋服務檢索到網站上有許多您不希望檢索的網址,可能會對網站的檢索和索引成效產生負面影響。一般來說,這類網址有以下幾種:

  • 多面向導覽工作階段 ID:多面向導覽通常是網站內的重複內容;而工作階段 ID 和其他只會排序或篩選網頁的網址參數一樣,都不會提供新內容。請使用 robots.txt 封鎖多面向導覽網頁。
  • 重複的內容:請協助 Google 識別重複的內容,避免不必要的檢索作業。
  • soft 404 網頁:如果網頁已不存在,請傳回 404 錯誤碼。
  • 遭入侵的網頁:請務必查看安全性問題報告,如果找到任何遭入侵網頁,請加以修正或移除。
  • 無限空間網址和 Proxy:請使用 robots.txt 禁止 Google 檢索這些網址。
  • 劣質內容和垃圾內容:顯然地,避免這類內容沒有壞處。
  • 這類內容包括購物車頁面、無限捲動頁面,以及會執行動作的網頁 (例如「註冊」頁面或「立即購買」頁面)。

建議做法:

  • 如果完全不希望 Google 檢索某個資源或網頁,請使用 robots.txt 加以封鎖。
  • 如果有多個網頁都重複使用相同的資源 (例如共用圖片或 JavaScript 檔案),請在每個網頁中以相同網址的參照該資源,以便 Google 能快取同樣的資源並重複使用,不必對同一個資源發出多次要求。

請避免:

  • 請勿定期新增或移除 robots.txt 中的網頁或目錄,試圖藉此重新分配網站的檢索預算。robots.txt 只應用來封鎖您希望 Google 永遠不要顯示的網頁或資源。
  • 請勿透過輪流抽換 Sitemap 內的項目或其他暫時隱藏機制,試圖重新分配預算。

處理網站的過度檢索問題 (緊急情況時)

Googlebot 會採用演算法來避免過度檢索您的網站。不過,如果發現 Googlebot 的檢索要求已讓網站不堪負荷,建議試試以下應對方式。

診斷方式

監控伺服器,確認 Googlebot 對你的網站是否提出過多檢索要求。

處理方式

在情況緊急時,建議按照下列步驟減緩 Googlebot 的檢索頻率:

  1. 在伺服器超載時,「暫時」針對 Googlebot 要求傳回 503429HTTP 回應狀態碼。Googlebot 會在接下來的 2 天內持續嘗試重新檢索這些網址。請注意,執行傳回這類「無法使用」代碼的時間如果超過數天,會導致 Google 永久降低網站上網址的檢索頻率,甚至永久停止檢索您的網站,因此,請一併執行其他後續步驟。
  2. 降低網站的 Googlebot 檢索頻率。這項作業最慢會在 2 天後生效,且您必須具備 Search Console 資源擁有者權限。請先瀏覽檢索統計資料報告,查看「主機可用性」中的「主機使用率」圖表如果圖表顯示 Google 過度檢索網站的問題在長時間內反覆發生,才執行這項作業。
  3. 一旦檢索頻率降低,請停止針對檢索要求傳回 503429 HTTP 回應狀態碼;如果執行傳回 503429 的時間超過 2 天,會導致 Google 從索引中移除這些網址。
  4. 請長期監控網站的檢索狀況和主機的負載量,視情況重新提高檢索頻率,或者允許預設的檢索頻率。
  5. 如果出現問題的檢索器是其中一個 AdsBot 檢索器,那麼起因很可能是您之前曾為網站建立的動態搜尋廣告目標,而 Google 正試圖檢索這個網站。這項檢索作業每 2 週會進行一次,如果伺服器負載量不足以處理這些檢索要求,建議限制廣告目標數量,或是增加伺服器負載量。

關於檢索的迷思與正確資訊

測試看看您是否瞭解 Google 檢索網站及建立網站索引的方式。

壓縮 Sitemap 能夠提高檢索預算。
這並非事實。即使 Sitemap 經過壓縮,系統仍需要從伺服器中擷取 Sitemap 檔案,因此,傳送已壓縮的 Sitemap 檔案其實無法節省多少檢索時間或資源。
Google 偏好新的內容,所以最好要不斷微調網頁。
我們評斷內容的標準在於品質,不問新舊,因此請視需要建立並更新內容即可。為了讓網頁看起來比較新,而刻意對網頁進行細微變動並更新網頁日期,這麼做其實不會帶來實質效益。
相較於新內容,Google 更偏好舊的內容 (因為可信度較高)。
如果網頁很實用,那不論新舊都一樣實用。
Google 偏好簡潔的網址,不喜歡查詢參數。
我們能夠檢索參數。
網頁載入及轉譯的速度越快,Google 能檢索的內容就越多。
沒錯,因為我們擁有的資源同時受限於時間和檢索漫遊器數量,如果您能在有限時間內提供越多網頁,我們能夠檢索的數量就越多。不過,如果網站含有重要資訊,那麼即使速度較慢,我們也可能投入更多時間進行檢索。相較於擴大檢索的涵蓋範圍,為改善使用者的體驗而加快網站速度可能更為重要,因為比起每次檢索都要涵蓋全部內容,協助 Google 檢索正確的內容則簡單許多。請注意,網站的檢索作業同時包含擷取內容及轉譯內容兩個部分,轉譯網頁與要求網頁兩者所花費的時間同樣重要。因此,加快網頁的顯示速度也會增加檢索的速度。
小型網站的檢索頻率會不如大型網站。
如果網站擁有重要內容,且經常變更,那麼無論網站規模大小我們都會經常進行檢索。
Google 會認為越接近首頁的內容越重要。
不全然正確
網站的首頁通常是網站中最重要的網頁,這讓直接連結至首頁的網頁看起來比較重要,因此檢索的頻率較高。不過,這並不表示這些網頁的排名就會比網站上的其他網頁更高。
網址版本管理有助於鼓勵 Google 重新檢索網頁。
不全然正確
使用經版本管理的網址或許能夠吸引 Google 盡快重新檢索該網頁,但通常來說並非必要步驟;而且,如果網頁並未實際變更內容,就會浪費檢索資源。如果您使用版本管理網址來表示有新內容,我們建議只在網頁內容有實質意義變更的情況下變更網址。
網站的速度和錯誤會影響我的檢索預算。
提高網站速度不僅可帶來更流暢的使用者體驗,還能提升檢索頻率。執行速度快的網站代表伺服器的運作情況良好,讓 Googlebot 能透過相同的連線數量擷取更多內容。反過來說,如果出現大量 5xx HTTP 回應狀態碼 (伺服器錯誤) 或是連線逾時,則表示伺服器運作情況不佳,檢索速度也會因此變慢。建議您密切注意 Search Console 中的檢索統計資料報告,盡量避免伺服器發生錯誤。
檢索是影響排名的因素之一。
改善檢索頻率不代表網站一定能獲得更好的搜尋結果排名。Google 會使用許多信號來為結果排名,雖然檢索是網頁顯示在搜尋結果中的必要步驟,但並非排名信號。
替代網址和嵌入內容也會計入檢索預算。
一般來說,Googlebot 在網站上檢索到的所有網址都會計入檢索預算。由於替代網址 (例如 AMP 或 hreflang) 和嵌入內容 (例如 CSS 和 JavaScript,包括 XHR 擷取) 都需要經過檢索,所以會占用網站的檢索預算。
我可以使用「crawl-delay」規則控制 Googlebot。
Googlebot 不會處理非標準的「crawl-delay」robots.txt 規則。
nofollow 規則會影響檢索預算。
不全然正確
任何受到檢索的網址都會影響檢索預算,因此,即使您將網頁的網址標記為 nofollow,但只要網站上的其他網頁 (或網路上的任何網頁) 未對該網址加上 nofollow 標籤,系統就仍會檢索該網址。
我可以使用 noindex 來控制檢索預算。
不全然正確
所有檢索的網址都會影響檢索預算,而且 Google 必須檢索網頁,才能找到 noindex 規則。

不過,noindex 可協助您將內容排除在索引之外。如要確保這些網頁不會編入 Google 索引中,請繼續使用 noindex,而且不必擔心檢索預算。請特別注意,如果使用 noindex 從 Google 的索引中移除網址,Googlebot 就可以專心處理您網站上的其他網址,這表示長期下來,noindex 可以間接釋出網站的檢索預算。
提供 4xx HTTP 狀態碼的網頁會浪費檢索預算。
提供 4xx HTTP 狀態碼 (不含 429) 的網頁不會浪費檢索預算。Google 嘗試檢索網頁,但收到狀態碼且沒有其他內容。