Robots.txt:SEO 終極指南(2021 版)
已發表: 2021-06-10 今天,您將學習如何為網站的 SEO 創建最關鍵的文件之一:
(robots.txt 文件)。
具體來說,我將向您展示如何使用機器人排除協議來阻止機器人進入特定頁面,增加抓取頻率,優化抓取預算,並最終在 SERP 中獲得更多正確頁面的排名。
我正在報導:
- robots.txt 文件是什麼
- 為什麼 robots.txt 很重要
- robots.txt 的工作原理
- Robots.txt 用戶代理和指令
- Robots.txt 與元機器人
- 如何找到您的 robots.txt
- 創建您的 robots.txt 文件
- Robots.txt 文件最佳實踐
- Robots.txt 示例
- 如何審核您的 robots.txt 是否有錯誤
另外,還有很多。 讓我們潛入水中。
什麼是 Robots.txt 文件? 而且,為什麼你需要一個
簡單來說,robots.txt 文件是網絡機器人的指導手冊。
它通知所有類型的機器人,它們應該(和不應該)抓取網站的哪些部分。
也就是說,robots.txt 主要用作“行為準則”來控制搜索引擎機器人(AKA 網絡爬蟲)的活動。

每個主要搜索引擎(包括谷歌、必應和雅虎)都會定期檢查 robots.txt,以獲取有關如何抓取網站的說明。 這些指令稱為指令。
如果沒有指令——或者沒有 robots.txt 文件——搜索引擎將抓取整個網站、私人頁面等等。
儘管大多數搜索引擎都很聽話,但需要注意的是,遵守 robots.txt 指令是可選的。 如果他們願意,搜索引擎可以選擇忽略您的 robots.txt 文件。
值得慶幸的是,谷歌不是這些搜索引擎之一。 Google 傾向於遵守 robots.txt 文件中的說明。
為什麼 Robots.txt 很重要?
擁有 robots.txt 文件對於很多網站來說並不重要,尤其是小型網站。
這是因為 Google 通常可以找到並索引網站上的所有重要頁面。
而且,他們會自動不索引重複的內容或不重要的頁面。
但是,沒有充分的理由不擁有 robots.txt 文件——所以我建議你擁有一個。
robots.txt 可讓您更好地控制搜索引擎可以在您的網站上抓取和不能抓取的內容,這很有幫助,原因如下:
允許從搜索引擎阻止非公共頁面
有時,您的網站上有不想編入索引的頁面。
例如,您可能正在一個臨時環境中開發一個新網站,您希望確保在啟動之前對用戶隱藏。
或者,您可能有不想出現在 SERP 中的網站登錄頁面。
如果是這種情況,您可以使用 robots.txt 從搜索引擎爬蟲中阻止這些頁面。
控制搜索引擎抓取預算
如果您很難讓所有頁面都在搜索引擎中編入索引,那麼您可能會遇到抓取預算問題。
簡而言之,搜索引擎正在用盡分配的時間來抓取您網站無用頁面上的內容。

通過使用 robots.txt 阻止低效用 URL,搜索引擎機器人可以將更多的抓取預算花在最重要的頁面上。
防止資源索引
最佳實踐是使用“no-index”元指令來阻止單個頁面被索引。
問題是,元指令不適用於多媒體資源,如 PDF 和 Word 文檔。
這就是 robots.txt 派上用場的地方。
您可以在 robots.txt 文件中添加簡單的文本行,搜索引擎就會被阻止訪問這些多媒體文件。
(我將在本文後面向您展示如何做到這一點)
Robots.txt 如何(確切地)工作?
正如我已經分享的,robots.txt 文件充當搜索引擎機器人的指導手冊。 它告訴搜索機器人他們應該在哪裡(以及不應該在哪裡)爬行。
這就是為什麼搜索爬蟲一到達網站就會查找 robots.txt 文件的原因。
如果它找到 robots.txt,爬蟲會先讀取它,然後再繼續爬取網站。

如果網絡爬蟲沒有找到 robots.txt,或者該文件不包含禁止搜索機器人活動的指令,爬蟲將繼續像往常一樣爬取整個網站。
為了讓搜索機器人可以找到和讀取 robots.txt 文件,robots.txt 以非常特殊的方式格式化。
首先,它是一個沒有 HTML 標記代碼的文本文件(因此擴展名為 .txt)。
其次,它被放置在網站的根文件夾中,例如 https://seosherpa.com/robots.txt。
第三,它使用所有 robots.txt 文件通用的標準語法,如下所示:
Sitemap: [URL location of sitemap] User-agent: [bot identifier] [directive 1] [directive 2] [directive ...] User-agent: [another bot identifier] [directive 1] [directive 2] [directive ...]
這種語法乍一看可能令人生畏,但實際上非常簡單。
簡而言之,您定義了指令適用的機器人(用戶代理),然後說明機器人應遵循的規則(指令)。
讓我們更詳細地探討這兩個組件。
用戶代理
用戶代理是用於定義特定網絡爬蟲的名稱——以及其他在互聯網上活動的程序。
實際上有數百個用戶代理,包括設備類型和瀏覽器的代理。
大多數與 robots.txt 文件和 SEO 的上下文無關。 另一方面,這些你應該知道:
- 谷歌:谷歌機器人
- 谷歌圖片:谷歌機器人圖片
- 谷歌視頻: Googlebot-視頻
- Google 新聞: Googlebot 新聞
- 必應: Bingbot
- 必應圖像和視頻: MSNBot-Media
- 雅虎:啜飲
- Yandex: YandexBot
- 百度:百度蜘蛛
- DuckDuckGo:鴨鴨機器人
通過說明用戶代理,您可以為不同的搜索引擎設置不同的規則。

例如,如果您希望某個頁面顯示在 Google 搜索結果中而不是百度搜索中,您可以在 robots.txt 文件中包含兩組命令:一組以“User-agent: Bingbot”開頭,一組以通過“用戶代理:Baiduspider”。
如果您希望指令適用於所有用戶代理,也可以使用星號 (*) 通配符。
例如,假設您想阻止除 DuckDuckGo 之外的所有搜索引擎機器人抓取您的網站。 以下是你的做法:
User-agent: * Disallow: / User-agent: DuckDuckBot Allow: /
旁注:如果 robots.txt 文件中有相互矛盾的命令,機器人將遵循更細化的命令。
這就是為什麼在上面的示例中,DuckDuckBot 知道要抓取網站,即使之前的指令(適用於所有機器人)說不抓取。 簡而言之,機器人將遵循最準確適用於它們的指令。
指令
指令是您希望用戶代理遵循的行為準則。 換句話說,指令定義了搜索機器人應該如何爬取你的網站。
以下是 GoogleBot 當前支持的指令,以及它們在 robots.txt 文件中的使用:
不允許
使用此指令禁止搜索機器人抓取特定 URL 路徑上的某些文件和頁面。

例如,如果您想阻止 GoogleBot 訪問您的 wiki 及其所有頁面,您的 robots.txt 應包含以下指令:
User-agent: GoogleBot Disallow: /wiki
您可以使用 disallow 指令來阻止抓取精確的 URL、某個目錄中的所有文件和頁面,甚至您的整個網站。
允許
如果您想允許搜索引擎在您網站的其他不允許的部分中抓取特定的子目錄或頁面,則允許指令很有用。

假設您想阻止所有搜索引擎抓取您博客上的帖子,除了一個; 然後你會像這樣使用允許指令:
User-agent: * Disallow: /blog Allow: /blog/allowable-post
由於搜索機器人始終遵循 robots.txt 文件中給出的最細粒度的指令,它們知道抓取/blog/allowable-post,但不會抓取該目錄中的其他帖子或文件,例如:
- /博客/後一/
- /博客/後二/
- /blog/文件名.pdf
Google 和 Bing 都支持此指令。 但其他搜索引擎沒有。
網站地圖
sitemap 指令用於向搜索引擎指定 XML 站點地圖的位置。

如果您不熟悉站點地圖,它們用於列出您希望在搜索引擎中被抓取和索引的頁面。
通過在 robots.txt 中包含站點地圖指令,您可以幫助搜索引擎找到您的站點地圖,進而抓取和索引您網站上最重要的頁面。
話雖如此,如果您已經通過 Search Console 提交了 XML 站點地圖,那麼在 robots.txt 中添加站點地圖對 Google 來說有些多餘。 儘管如此,最好還是使用站點地圖指令,因為它會告訴諸如 Ask、Bing 和 Yahoo 之類的搜索引擎在哪裡可以找到您的站點地圖。
以下是使用站點地圖指令的 robots.txt 文件的示例:
Sitemap: https://www.website.com/sitemap.xml User-agent: * Disallow: /wiki/ Allow: /wike/article-title/
請注意 robots.txt 文件中站點地圖指令的位置。 它最好放在 robots.txt 的最頂部。 也可以放在底部。
如果您有多個站點地圖,則應將所有站點地圖都包含在您的 robots.txt 文件中。 如果我們為頁面和帖子使用單獨的 XML 站點地圖,robots.txt 文件的外觀如下:
Sitemap: http://website.com/post-sitemap.xml Sitemap: http://website.com/page-sitemap.xml User-agent: * Disallow: /wiki/ Allow: /wike/article-title/
無論哪種方式,您只需要提及每個 XML 站點地圖一次,因為所有受支持的用戶代理都將遵循該指令。
請注意,與列出路徑的其他 robots.txt 指令不同,站點地圖指令必須說明 XML 站點地圖的絕對 URL,包括協議、域名和頂級域擴展名。
註釋
註釋“指令”對人類有用,但搜索機器人不使用。

您可以添加評論以提醒您為什麼存在某些指令,或阻止有權訪問您的 robots.txt 的人刪除重要指令。 簡而言之,註釋用於向您的 robots.txt 文件添加註釋。
要添加評論,請鍵入。” #"
後跟註釋文本。
# Don't allow access to the /wp-admin/ directory for all robots. User-agent: * Disallow: /wp-admin/
您可以在行首(如上所示)或同一行的指令之後(如下所示)添加註釋:
User-agent: * #Applies to all robots Disallow: /wp-admin/ # Don't allow access to the /wp-admin/ directory.
無論您選擇在哪裡寫評論,散列之後的所有內容都將被忽略。
一直追到現在?
偉大的! 我們現在介紹了您的 robots.txt 文件所需的主要指令——這些也恰好是 Google 支持的唯一指令。
但是其他搜索引擎呢? 對於 Bing、Yahoo 和 Yandex,您可以使用另外一個指令:
爬行延遲
Crawl-delay 指令是一個非官方指令,用於防止服務器因過多的爬網請求而過載。
換句話說,您使用它來限制搜索引擎可以抓取您的網站的頻率。

請注意,如果搜索引擎可以通過頻繁抓取您的網站來使您的服務器過載,那麼將 Crawl-delay 指令添加到您的 robots.txt 文件中只會暫時解決問題。
情況可能是,您的網站在蹩腳的主機或配置錯誤的主機環境上運行,您應該迅速修復這些問題。
抓取延遲指令通過定義搜索機器人可以抓取您的網站的時間(以秒為單位)來工作。
例如,如果您將抓取延遲設置為 5,搜索機器人會將一天分成 5 秒的窗口,在每個窗口中只抓取一個頁面(或不抓取),一天內最多抓取大約 17,280 個 URL。
既然如此,在設置這個指令時要小心,特別是如果你有一個大型網站。 如果您的網站有數百萬個頁面,那麼每天僅抓取 17,280 個 URL 並不是很有幫助。
每個搜索引擎處理 crawl-delay 指令的方式都不同。 讓我們在下面分解它:
抓取延遲和 Bing、Yahoo 和 Yandex
Bing、Yahoo 和 Yandex 都支持 robots.txt 中的 crawl-delay 指令。
這意味著您可以為 BingBot、Slurp 和 YandexBot 用戶代理設置爬網延遲指令,搜索引擎將相應地限制其爬網。
請注意,每個搜索引擎對 crawl-delay 的解釋方式略有不同,因此請務必查看他們的文檔:
- 必應和雅虎
- Yandex
也就是說,每個引擎的 crawl-delay 指令的格式都是相同的。 您必須將它放在 disallow OR allow 指令之後。 這是一個例子:
User-agent: BingBot Allow: /widgets/ Crawl-delay: 5
爬行延遲和谷歌
Google 的爬蟲不支持 crawl-delay 指令,因此在 robots.txt 中為 GoogleBot 設置 crawl-delay 是沒有意義的。
但是,Google 確實支持在 Google Search Console 中定義抓取速度。 這是如何做到的:
- 轉到 Google Search Console 的設置頁面。
- 選擇要為其定義爬網率的屬性
- 點擊“限制 Google 的最大抓取速度”。
- 將滑塊調整為您喜歡的抓取速度。 默認情況下,抓取速度設置為“讓 Google 優化我的網站(推薦)”。

爬行延遲和百度
和谷歌一樣,百度也不支持抓取延遲指令。 但是,可以註冊一個百度站長工具帳戶,您可以在其中控制抓取頻率,類似於 Google Search Console。
底線? Robots.txt 告訴搜索引擎蜘蛛不要抓取您網站上的特定頁面。
Robots.txt vs meta robots vs x-robots
那裡有很多“機器人”指令。 有什麼區別,或者它們是否相同?
讓我提供一個簡短的解釋:
首先,robots.txt 是一個實際的文本文件,而 meta 和 x-robots 是網頁代碼中的標籤。
其次,robots.txt 為機器人提供瞭如何抓取網站頁面的建議。 另一方面,robots 的元指令為抓取和索引頁面內容提供了非常明確的指令。
除了它們是什麼之外,這三個都具有不同的功能。
Robots.txt 指示站點或目錄範圍的爬網行為,而元和 x-robots 可以指示單個頁面(或頁面元素)級別的索引行為。

一般來說:
如果你想阻止一個頁面被索引,你應該使用“no-index”元機器人標籤。 在 robots.txt 中禁止頁面並不能保證它不會在搜索引擎中顯示(畢竟,robots.txt 指令是建議)。 另外,如果它是從另一個網站鏈接的,搜索引擎機器人仍然可以找到該 URL 並將其編入索引。
相反,如果你想阻止媒體文件被索引,robots.txt 是要走的路。 您不能將元機器人標籤添加到 jpeg 或 PDF 等文件中。
如何找到你的 Robots.txt
如果您的網站上已有 robots.txt 文件,則可以通過 yourdomain.com/robots.txt 訪問它。

導航到瀏覽器中的 URL。

如果您看到像上面這樣的基於文本的頁面,那麼您有一個 robots.txt 文件。
如何創建 Robots.txt 文件
如果您還沒有 robots.txt 文件,創建一個很簡單。
首先,打開記事本、Microsoft Word 或任何文本編輯器並將文件保存為“機器人”。
請務必使用小寫字母,並選擇 .txt 作為文件類型擴展名:

其次,添加您的指令。 例如,如果你想禁止所有搜索機器人爬取你的 /login/ 目錄,你可以輸入:

繼續添加指令,直到您對 robots.txt 文件感到滿意為止。
或者,您可以使用 Ryte 提供的類似工俱生成 robots.txt。

使用工具的一個優點是可以最大限度地減少人為錯誤。
robots.txt 語法中的一個小錯誤可能會導致 SEO 災難。
也就是說,使用 robots.txt 生成器的缺點是定制的機會很小。
這就是為什麼我建議您學習自己編寫一個 robots.txt 文件。 然後,您可以完全按照您的要求構建 robots.txt。
將 Robots.txt 文件放在哪裡
將您的 robots.txt 文件添加到它適用的子域的頂級目錄中。
例如,要控制yourdomain.com上的抓取行為,robots.txt 文件應該可以通過yourdomain.com/robots.txt URL 路徑訪問。
另一方面,如果您想控制對像shop.yourdomain.com這樣的子域的抓取,robots.txt 應該可以在shop.yourdomain.com/robots.txt URL 路徑上訪問。
黃金法則是:
- 為您網站上的每個子域提供其自己的 robots.txt 文件。
- 將您的文件命名為robots.txt ,全部小寫。
- 將文件放在它引用的子域的根目錄中。
如果在根目錄中找不到 robots.txt 文件,搜索引擎將假定沒有指令,並將完整地抓取您的網站。
Robots.txt 文件最佳實踐
接下來,讓我們介紹一下 robots.txt 文件的規則。 使用這些最佳實踐來避免常見的 robots.txt 陷阱:
為每個指令使用一個新行
robots.txt 中的每個指令都必須換行。
否則,搜索引擎會對要抓取的內容(和索引)感到困惑。
例如,此配置不正確:
User-agent: * Disallow: /folder/ Disallow: /another-folder/
另一方面,這是一個正確設置的 robots.txt 文件:
User-agent: * Disallow: /folder/ Disallow: /another-folder/
特異性“幾乎”總是獲勝
對於 Google 和 Bing,更精細的指令勝出。
例如,這個 Allow 指令勝過 Disallow 指令,因為它的字符長度更長。
User-agent: * Disallow: /about/ Allow: /about/company/
Google 和 Bing 知道抓取 /about/company/,但不知道抓取 /about/ 目錄中的任何其他頁面。
然而,在其他搜索引擎的情況下,情況恰恰相反。
默認情況下,對於除 Google 和 Bing 之外的所有主要搜索引擎,第一個匹配的指令總是會獲勝。
在上面的示例中,搜索引擎將遵循 Disallow 指令並忽略 Allow 指令,這意味著不會抓取 /about/company 頁面。
在為所有搜索引擎創建規則時請記住這一點。
每個用戶代理只有一組指令
如果您的 robots.txt 包含每個用戶代理的多組指令,boh-oh-boy,它會讓人感到困惑嗎?
不一定適用於機器人,因為它們會將來自各種聲明的所有規則組合成一組並遵循它們,但對於您而言。
為避免潛在的人為錯誤,請聲明一次用戶代理,然後在下面列出適用於該用戶代理的所有指令。

通過保持整潔和簡單,你不太可能犯錯誤。
使用通配符 (*) 簡化說明
您注意到上面示例中的通配符 (*) 了嗎?
這是正確的; 您可以使用通配符 (*) 將規則應用於所有用戶代理並在聲明指令時匹配 URL 模式。
例如,如果您想阻止搜索機器人訪問您網站上的參數化產品類別 URL,您可以像這樣列出每個類別:
User-agent: * Disallow: /products/watches? Disallow: /products/handbags? Disallow: /products/shoes?
或者,您可以使用將規則應用於所有類別的通配符。 下面是它的外觀:
User-agent: * Disallow: /products/*?
此示例阻止搜索引擎抓取 /product/ 子文件夾中包含問號的所有 URL。 換句話說,任何參數化的產品類別 URL。
Google、Bing、Yahoo 支持在 robots.txt 指令和 Ask 中使用通配符。
使用“$”指定 URL 的結尾
要指示 URL 的結尾,請在 robots.txt 路徑後使用美元符號 ( $
)。
假設您想阻止搜索機器人訪問您網站上的所有 .doc 文件; 那麼你會使用這個指令:
User-agent: * Disallow: /*.doc$
這將阻止搜索引擎訪問任何以 .doc 結尾的 URL。
這意味著他們不會抓取 /media/file.doc,但他們會抓取 /media/file.doc?id=72491,因為該 URL 不以“.doc”結尾。
每個子域都有自己的 robots.txt
Robots.txt 指令僅適用於 robots.txt 文件所在的(子)域。
這意味著如果您的網站有多個子域,例如:
- 域名.com
- 門票.domain.com
- events.domain.com
每個子域都需要自己的 robots.txt 文件。
robots.txt 應始終添加到每個子域的根目錄中。 以下是使用上述示例的路徑:
- domain.com/robots.txt
- ticket.domain.com/robots.txt
- events.domain.com/robots.txt
不要在 robots.txt 中使用 noindex
簡單來說,Google 不支持 robots.txt 中的 no-index 指令。
雖然谷歌過去確實遵循它,但截至 2019 年 7 月,谷歌完全停止支持它。
如果您正在考慮使用 no-index robots.txt 指令對其他搜索引擎上的內容進行無索引,請再想一想:
非官方的無索引指令從未在 Bing 中起作用。
到目前為止,在搜索引擎中無索引內容的最佳方法是將無索引元機器人標籤應用於您要排除的頁面。
將 robots.txt 文件保持在 512 KB 以下
Google 目前的 robots.txt 文件大小限制為 500 千字節(512 千字節)。
這意味著可以忽略 512 KB 之後的任何內容。

也就是說,假設一個字符只消耗一個字節,您的 robots.txt 將需要很大才能達到該文件大小限制(準確地說是 512,000 個字符)。 通過減少對單獨排除的頁面的關注,更多地關注通配符可以控制的更廣泛的模式,保持您的 robots.txt 文件精簡。
目前尚不清楚其他搜索引擎是否具有 robots.txt 文件的最大允許文件大小。
Robots.txt 示例
以下是 robots.txt 文件的一些示例。
它們包括我們的 SEO 機構最常用於客戶的 robots.txt 文件中的指令組合。 但請記住; 這些僅用於啟發目的。 您始終需要自定義 robots.txt 文件以滿足您的要求。
允許所有機器人訪問所有內容
這個 robots.txt 文件沒有為所有搜索引擎提供禁止規則:
User-agent: * Disallow:
換句話說,它允許搜索機器人抓取所有內容。 它與空的 robots.txt 文件或根本沒有 robots.txt 的用途相同。
阻止所有機器人訪問所有內容
示例 robots.txt 文件告訴所有搜索引擎不要訪問尾部斜杠後的任何內容。 換句話說,整個域:
User-agent: * Disallow: /
簡而言之,這個 robots.txt 文件會阻止所有搜索引擎機器人,並可能會阻止您的網站顯示在搜索結果頁面上。
阻止所有機器人抓取一個文件
在此示例中,我們阻止所有搜索機器人抓取特定文件。
User-agent: * Disallow: /directory/this-is-a-file.pdf
阻止所有機器人抓取一種文件類型(doc、pdf、jpg)
由於沒有索引,像“doc”或“pdf”這樣的文件不能使用元機器人“no-index”標籤來完成; 您可以使用以下指令來阻止特定文件類型被索引。
User-agent: * Disallow: /*.doc$ Disallow: /*.pdf$ Disallow: /*.jpg$
只要沒有單個文件從網絡上的其他地方鏈接到該文件,這將有助於對該類型的所有文件取消索引。
阻止 Google 抓取多個目錄
您可能希望阻止對特定機器人或所有機器人的多個目錄的爬取。 在此示例中,我們阻止 Googlebot 抓取兩個子目錄。
User-agent: Googlebot Disallow: /admin/ Disallow: /private/
請注意,您可以使用 bock 的目錄數量沒有限制。 只需在指令適用的用戶代理下方列出每一項。
阻止 Google 抓取所有參數化網址
該指令對於使用分面導航的網站特別有用,其中可以創建許多參數化 URL。
User-agent: Googlebot Disallow: /*?
該指令阻止您的抓取預算被消耗在動態 URL 上,並最大限度地抓取重要頁面。 我經常使用它,尤其是在具有搜索功能的電子商務網站上。
阻止所有機器人抓取一個子目錄,但允許抓取其中的一個頁面
有時您可能希望阻止爬蟲訪問您網站的完整部分,但保留一個頁面可訪問。 如果這樣做,請使用以下“允許”和“禁止”指令的組合:
User-agent: * Disallow: /category/ Allow: /category/widget/
它告訴搜索引擎不要抓取完整的目錄,不包括一個特定的頁面或文件。
用於 WordPress 的 Robots.txt
這是我為 WordPress robots.txt 文件推薦的基本配置。 它會阻止對管理頁面和標籤以及作者 URL 的爬取,這可能會在 WordPress 網站上造成不必要的垃圾。
User-Agent: * Allow: /wp-content/uploads/ Disallow: /wp-content/plugins/ Disallow: /wp-admin/ Disallow: /readme.html Disallow: /refer/ Disallow: /tag/ Disallow: /author/ Disallow: /404-error/ Sitemap: http://www.example.com/post-sitemap.xml Sitemap: http://www.example.com/page-sitemap.xml
這個 robots.txt 文件適用於大多數 WordPress 網站,但當然,您應該始終根據自己的要求對其進行調整。
如何審核您的 Robots.txt 文件中的錯誤
在我的時代,我在 robots.txt 文件中看到的影響排名的錯誤可能比技術 SEO 的任何其他方面都多。 有這麼多可能相互衝突的指令,問題可能而且確實會發生。
因此,當涉及到 robots.txt 文件時,留意問題是值得的。
值得慶幸的是,Google Search Console 中的“覆蓋率”報告為您提供了一種檢查和監控 robots.txt 問題的方法。
您還可以使用 Google 漂亮的 Robots.txt 測試工具來檢查實時機器人文件中的錯誤,或者在部署新的 robots.txt 文件之前對其進行測試。

最後,我們將介紹最常見的問題、它們的含義以及如何解決它們。
提交的 URL 被 robots.txt 阻止
此錯誤意味著您提交的站點地圖中至少有一個 URL 被 robots.txt 阻止。

正確設置的站點地圖應僅包含您希望在搜索引擎中編入索引的 URL 。 因此,它不應包含任何無索引、規範化或重定向的頁面。
如果您遵循了這些最佳做法,那麼在您的站點地圖中提交的任何頁面都不會被 robots.txt 阻止。
如果您在覆蓋率報告中看到“提交的 URL 被 robots.txt 阻止”,您應該調查哪些頁面受到影響,然後切換您的 robots.txt 文件以刪除該頁面的阻止。
您可以使用 Google 的 robots.txt 測試器來查看哪個指令阻止了內容。
被 Robots.txt 屏蔽
此“錯誤”表示您的 robots.txt 阻止了當前不在 Google 索引中的頁面。

如果此內容具有實用性並應被編入索引,請刪除 robots.txt 中的抓取塊。
一個簡短的警告:
“被 robots.txt 阻止”不一定是錯誤。 事實上,這可能正是你想要的結果。
例如,您可能阻止了 robots.txt 中的某些文件,打算將它們從 Google 的索引中排除。 另一方面,如果您阻止對某些頁面的抓取是為了不對它們編制索引,請考慮刪除抓取塊並改用機器人的元標記。
這是保證內容從 Google 索引中排除的唯一方法。
已編入索引,但已被 Robots.txt 阻止
此錯誤意味著某些被 robots.txt 屏蔽的內容仍在 Google 中被編入索引。
當內容仍然可以被 Googlebot 發現時會發生這種情況,因為它是從網絡上的其他地方鏈接到的。 簡而言之,Googlebot 在訪問您網站的 robots.txt 文件之前會抓取該內容並對其編制索引,在該文件中會看到不允許的指令。
到那時,為時已晚。 它被索引:

讓我鑽這個家:
如果您嘗試從 Google 的搜索結果中排除內容,robots.txt 不是正確的解決方案。
我建議刪除爬網塊並使用元機器人無索引標籤來防止索引。
相反,如果您不小心屏蔽了此內容並希望將其保留在 Google 的索引中,請刪除 robots.txt 中的抓取塊並保留它。
這可能有助於提高內容在 Google 搜索中的可見度。
最後的想法
Robots.txt 可用於改進網站內容的抓取和索引,這有助於您在 SERP 中更加可見。
如果使用得當,它是您網站上最重要的文字。 但是,如果使用不慎,它將成為您網站代碼中的致命弱點。
好消息是,只需對用戶代理和一些指令有基本的了解,就可以得到更好的搜索結果。
唯一的問題是,您將在 robots.txt 文件中使用哪些協議?
請在下面的評論中告訴我。