robots.txt 驗證器

貼上 robots.txt 內容以檢查語法。解析 User-agent、Disallow、Allow、Sitemap 指令,並可視化爬蟲訪問規則。

[[ fetchError ]]

[[ labels.or_paste ]]
[[ labels.sample_label ]]:
[[ labels.no_input ]]

[[ labels.result_label ]]

[[ labels.errors_label ]]
  • [[ labels.line_label ]] [[ err.line ]]: [[ errorMessage(err) ]]
✓ [[ labels.no_errors ]]

[[ labels.blocks_label ]]

User-agent: [[ ua === '*' ? labels.all_crawlers + ' (*)' : ua ]]
[[ labels.no_rules ]]
Crawl-delay [[ block.crawlDelay ]]

[[ labels.sitemaps_label ]]

robots.txt 驗證器是什麼

只需貼上 robots.txt 的內容,或直接輸入網址取得,本工具就能檢測出其中的語法錯誤和書寫疏漏。它會解析 User-agent、Disallow、Allow、Sitemap、Crawl-delay 等各項指令,並將每個爬蟲可以存取和被禁止存取的路徑整理成一目了然的清單。

手寫的 robots.txt 很容易出現細微的錯誤——例如指令順序顛倒、忘記先寫 User-agent,或規則被歸到錯誤的群組下——這些看似不起眼的疏漏,卻可能導致整個網站被搜尋引擎拒於門外。在正式發布前用本工具檢查一遍,就能提前發現並避免這類意外。

robots.txt 驗證器的使用方法

  1. 準備好要檢查的 robots.txt 複製本機檔案的內容,或準備好已上線網站的網址。
  2. 透過網址取得,或直接貼上內容 在「從 URL 取得」中輸入目標網站的位址進行取得,或直接將內容貼到文字框中。
  3. 查看解析結果中的錯誤與警告 未知指令、缺少 User-agent 等書寫錯誤會連同具體行號一併顯示出來。
  4. 依爬蟲查看允許與禁止的路徑 結果會依爬蟲分類整理出允許和禁止存取的路徑,方便對照是否符合預期。
  5. 確認 Sitemap 指令是否存在且正確 檢查網站地圖的網址是否書寫正確,確保搜尋引擎能夠順利找到它。

用好本工具的小技巧

  • User-agent: * 適用於所有爬蟲。指定了機器人名稱(如 Googlebot)的塊優先順序高於萬用字元塊。
  • Disallow:(空值)表示"允許所有路徑"。Disallow: /(僅斜槓)表示禁止所有內容,請注意區分。
  • Allow: 指令優先於 Disallow:。例如,先寫 Disallow: /private/,再寫 Allow: /private/public.html,則該檔案允許訪問。
  • Crawl-delay: 是非標準指令,指定請求間隔(秒)。Bing 和 Yandex 支援,Google 不支援——請使用 Google Search Console 的抓取頻率設定。
  • Sitemap: 指令可告知搜尋引擎站點地圖的 URL。Google 和 Bing 均識別此指令,建議與 Search Console 手動提交結合使用。

使用情境

網站改版上線前的最終確認

在正式發布前貼上 robots.txt 進行檢查,確認測試環境遺留的全站封鎖規則沒有被帶到正式環境。

檢查 CMS 或框架自動產生的預設設定

許多平台安裝後會自動產生 robots.txt,用本工具確認其中沒有意外封鎖需要被收錄的目錄。

作為 SEO 稽核中的技術檢查項目

當網站排名不理想時,可借助本工具在短時間內確認是否存在爬取被阻擋的問題。

參考調查競爭對手的爬取設定

輸入競爭對手網站的網址取得其 robots.txt,了解對方將哪些目錄排除在爬取範圍之外。

詞彙表

User-agent
指定規則適用對象(爬蟲名稱)的指令。* 表示適用於所有沒有更具體規則的爬蟲。
Disallow
禁止爬取指定路徑的指令。留空表示「允許所有路徑」,容易與僅有一個斜線、表示「禁止所有內容」的寫法混淆。
Allow
在 Disallow 所禁止的範圍內,為特定路徑開出例外、單獨允許存取的指令。
Sitemap 指令
告知搜尋引擎網站地圖 XML 網址的指令。它不受 Disallow 規則影響,會一律被讀取。
Crawl-delay
指定請求間隔(秒)的非標準指令。Bing、Yandex 會遵守,但 Google 完全不支援。
機器人排除協議(REP)
1994 年提出的、構成 robots.txt 基礎的約定。作為非正式慣例存在了近三十年,直到 2022 年才正式標準化為 RFC 9309。

常見問題

會。用 Disallow 遮蔽某個頁面後,爬蟲無法讀取其內容,該頁面不會被索引。但若有外部連結指向該頁面,搜尋引擎可能仍會將其列為"已知但未爬取"。如需徹底排除,需結合 noindex 元標籤。

不適用。robots.txt 的作用範圍是每個域名獨立的。example.com/robots.txt 不適用於 blog.example.com,子域名需要各自的 robots.txt。

Googlebot 支援 *(任意字串)和 $(URL 末尾)。例如,Disallow: /private/*.pdf$ 可遮蔽 /private/ 下的所有 PDF 檔案。並非所有爬蟲都支援萬用字元,請查閱各機器人的文件。
工具君

閒話 ― robots.txt 的誕生 ― 網際網路禮儀的起源

1994 年,荷蘭工程師 Martijn Koster 提出了機器人排除協議(REP)。當時網路爬蟲無序爬取網站,給伺服器造成過大負擔。Koster 的想法很簡單:"在網站根目錄放一個規則檔案,爬蟲就能讀取。" 這個檔案就是 robots.txt。

重要的是,robots.txt 是一種自願遵守的君子協議,沒有強制約束力。友好的爬蟲(如 Googlebot、Bingbot)會遵守它,但惡意爬蟲會無視它。因此 robots.txt 適合告知搜尋引擎哪些頁面不需要索引,但不能用於保護敏感內容——機密頁面必須通過身份驗證來保護。

機器人排除協議作為非正式慣例存在了近三十年,直到 2022 年 9 月才被 IETF 正式註冊為 RFC 9309。RFC 明確了指令名稱不區分大小寫,並解決了長期存在的語法歧義。