AI 爬蟲 robots.txt 檢查中的「已封鎖」結果是一個請求,而不是一道圍欄。根據 RFC 9309 的標準化規則,robots.txt 是一個自願性的檔案,爬蟲可以忽略它,因此回報某個路徑對 GPTBot 或 ClaudeBot 這類權杖被封鎖,只能說明你的檔案要求該操作者怎麼做,而不是操作者實際上會遵守。同樣的�輯也適用於專屬的訓練控制權杖,例如 Google-Extended 或 Applebot-Extended:Disallow 規則表達的是一種偏好,但它並不能在網路層進行身分驗證、授權或封鎖。若要真正保護內容不被查看、抓取或用於訓練,你需要的是伺服器端的存取控制,例如登入牆、付費牆或 IP 封鎖,而不僅僅是一條 robots.txt 規則。Cloudflare 的 AI 爬蟲參考資料 與其受管的 robots.txt 說明文件都描述了相同的自願性模型,而 AI Bot Robots.txt Checker 則在瀏覽器中針對其列出的操作者套用相同的 RFC 9309 邏輯。這個區別是理解任何 robots.txt 報告中「已封鎖」標籤前最重要的一點,因為一份乾淨的 Disallow 規則報告只是一個規劃用的產物,並非執行上的保證。

does a blocked result prevent an ai company from accessing my content when using robots txt ai crawlers
does a blocked result prevent an ai company from accessing my content when using robots txt ai crawlers

「已封鎖」結果的真正意涵(以及它的限制)

當你執行 robots.txt 檢查並在 ClaudeBot 或 GPTBot 之類的權杖旁邊看到「已封鎖」標籤時,該報告是在告訴你:你貼上的規則中包含一個符合你所輸入路徑的 Disallow 模式,依據的是 RFC 9309 邏輯。它並不是告訴你該操作者無法或不會抓取這個 URL。一旦開始閱讀表格,有三個重要的區別值得留意:

  • 檢查的範圍。 AI Bot Robots.txt Checker 會評估你貼上的一份 robots.txt 檔案,對照 32 個有文件紀錄的 AI 與 AI 相關產品權杖,套用 RFC 9309 標準化的核心比對規則。它不會呼叫任何操作者、檢查任何實際部署,也不會從你的瀏覽器對網路發出任何請求。
  • 「已封鎖」實際代表的意義。 「已封鎖」結果僅代表你貼上的規則在所實作的協定邏輯下,並未為該權杖請求存取。它無法證明操作者會遵守該規則、該頁面已從任何索引中移除,或訓練資料已被追溯清除。
  • 這個檔案無法做到的事。 Robots.txt 是自願性的。它既不是身分驗證、授權、防火牆,也不是合約強制執行系統。爬蟲可以忽略這個檔案,而在 Disallow 一行中公開列出某個路徑,甚至可能會讓任何讀取該檔案的人得知這個路徑。

下方的表格總結了單次執行能告訴你的內容,以及落在其範圍之外的部分,讓「請求」與「保證」之間的差異能一目了然。

這份報告能告訴你的這份報告無法告訴你的
你貼上的規則中,是否對這 32 個權杖中的每一個都包含相符的 Allow 或 Disallow 模式實際的 /robots.txt 是否就是你貼上的那份檔案(部署、轉址、快取或主機範圍)
在給定權杖中,適用的 RFC 9309 群組是哪一個(特定產品權杖或萬用字元)操作者是否會遵守該規則、仍然抓取該 URL,或將該頁面用於訓練
最長的相符模式,包含星號與美元符號錨點;在長度相同時由 Allow 勝出該頁面是否已被索引、被引用,或已存在於訓練語料中
空白的 Disallow 值不會產生封鎖效果,而空白的群組會回退到 User-agent:星號伺服器端的存取控制(登入、付費牆、IP 封鎖)是否確實已設置
每一列的來源狀態:第一方、受管或補充型目錄其他存取管道(API、合作夥伴摘要、搜尋引擎快取)是否仍會暴露該內容

如何針對 32 個 AI 產品權杖測試你的 robots.txt

  1. 在瀏覽器中開啟 AI Bot Robots.txt Checker。貼上你想要檢視的完整 robots.txt 文字內容,並將檔案控制在該工具強制執行的 500 KiB UTF-8 上限以內。
  2. 輸入一個以斜線開頭、區分大小寫的單一 URL 路徑。當這是你想要模擬的爬蟲請求的一部分時,路徑中可以包含查詢字串。比對是區分大小寫的,因此 /Private 與 /private 即使其餘規則完全相同,也可能產生不同的結果。
  3. 執行檢查。該工具會將檔案剖析為 RFC 9309 的 user-agent 群組、合併大小寫不敏感的產品權杖重複群組、僅在沒有特定群組相符時才回退到 User-agent:星號,並選取最長的相符 Allow 或 Disallow 模式,在長度相同時由 Allow 勝出。
  4. 檢視 32 列的表格。每一列都會針對同一個路徑回報「允許」或「已封鎖」,並標示操作者、目的類別與來源狀態,讓第一方爬蟲、專屬訓練控制與補充型目錄權杖都能清楚辨識。
  5. 在發布之前,針對關鍵的產品權杖再次比對最新的操作者說明文件。爬蟲產品會隨時間變化,而這份報告會明確地將補充型目錄條目標示為此類,而不是將其視為操作者第一方已驗證的內容。
  6. 部署完成後,從完全相同的 scheme 與主機抓取實際的 /robots.txt,確認回應為純文字且成功回傳,然後在可用的操作者工具或伺服器記錄中驗證行為。

由於該工具不會抓取 URL,因此無法偵測轉址、CDN 覆寫、僅對特定用戶端提供的語法、不正確的主機範圍、快取延遲或無法連線的檔案。這些限制讓檢查在保有隱私與決定性的同時,也使得相同文字與路徑下的結果易於重現。

這 32 個產品權杖代表什麼

報告中的 32 列是 robots.txt 的產品權杖,並不保證每一個字串都會原樣作為 HTTP User-Agent 標頭出現。某些操作者會發布專屬的控制權杖(例如 Google-Extended 或 Applebot-Extended),用於模型訓練或資料使用偏好的設定,這類偏好與其檢索爬蟲是並行的。其他列則代表爬蟲或助理檢索產品,決定了操作者最初會抓取哪些內容。表格會依用途將每一列分組,讓這些差異能一目了然:

  • 專屬訓練控制權杖。 這些權杖代表的是資料使用偏好,而非抓取偏好。封鎖它們是這個自願性 robots.txt 系統中最接近「退出訓練」的做法,但即便如此仍然只是一個請求。
  • AI 爬蟲檢索權杖。 這些權杖描述的是實際代表操作者抓取頁面的檢索產品。Disallow 它們能減少抓取嘗試,但同樣地,這也只是在操作者自行斟酌下被遵守的請求。
  • AI 助理與搜尋相關權杖。 這些涵蓋了結合檢索與摘要或引用的助理與搜尋類產品。各操作者的行為不盡相同,因此每一列都會標示其操作者與來源狀態。
  • 補充型目錄條目。 當無法取得操作者的主要說明文件時,Checker 會使用 Cloudflare 的 受管 robots.txt 參考資料 與 Radar 目錄權杖,並據此加上標示,而不是將其呈現為操作者第一方已驗證的內容。

影響檢查能否執行的限制

Checker 最多接受 500 KiB 的 UTF-8 輸入與 5,000 條非空白存取規則。RFC 9309 要求剖析器至少能處理 500 KiB,而這個互動式瀏覽器工具還會強制執行一份有文件紀錄的總體比對工作量上限,以避免惡意的長路徑與大型規則集凍結主執行緒。因此,即使檔案在位元組上限以內,仍可能因為規則數量超過上限或使比對引擎超出其工作量預算,而被安全上限以不可分割的方式拒絕。

另外有兩項限制影響的是解讀而非接受與否,且兩者在快速閱讀時都很容易忽略:

  • 非 User-agent、Allow 或 Disallow 指令的指令行不會影響結果。Sitemap 與 Crawl-delay 行對特定爬蟲可能有意義,但它們落在存取決策報告之外,因此 Sitemap 行永遠不會把「已封鎖」的列變成「允許」。
  • 空白的 Disallow 值不會封鎖任何內容。若沒有適用的 Allow 或 Disallow 規則相符,該路徑會被回報為「允許」,這雖然符合 RFC 9309,卻很容易被誤讀為交給操作者的一張綠燈通行證。

超越 robots.txt 以實現真正的 AI 存取控制

由於 robots.txt 是自願性的,「已封鎖」的結果只是一個起點,而非完成的控制。若目標是可強制執行的保護,就必須將 robots.txt 與真正能讓內容不上線的控制措施結合起來:

  • 身分驗證與授權。 將路徑置於登入、付費牆或會員檢查之後,讓該頁面對匿名請求(包括忽略 robots.txt 的爬蟲請求)永遠不返回內容。
  • 網路與來源控制。 使用 IP 白名單、防火牆或 CDN 挑戰機制,在操作者公開其範圍時封鎖特定的 IP 區段。將 robots.txt 規則視為在嚴格規則之上額外提出的禮貌性請求。
  • 監控與檢視。 檢查伺服器記錄與參照來源報告,特別是你所關心的操作者。一條從未量測的規則是一條你無法驗證的規則,而一份安靜的伺服器記錄是封鎖確實生效的唯一真正證明。
  • 索引與摘要控制。 使用 meta robots 標籤、X-Robots-Tag 標頭,以及任何操作者專屬的偏好設定頁面,來分別控制搜尋摘要、摘要使用方式與專屬訓練偏好,這些都與抓取決策分開處理。

整體而言,AI Bot Robots.txt Checker 是一份部署前的檢視工具,而非安全工具。請貼上與正式環境完全相同的檔案,測試幾個重要路徑,檢視特定與萬用字元群組,並在發布前將報告與操作者說明文件進行比對。權杖上的「已封鎖」標籤是這個工作流程的起點,而非終點。

延伸閱讀:如何從 Google AdSense 取得 ads.txt 並進行驗證

延伸閱讀:AI Bot Robots.txt Checker 是否會抓取你的實際網站?