robots.txt
外觀
定義
robots.txt 是放置在站點根目錄的文本文件,通過用戶代理分組聲明爬蟲的抓取許可與抓取路徑範圍,其規範為 IETF RFC 9309。對 AI 爬蟲而言,robots.txt 是決定其能否訪問站點內容的第一道也是最基礎的一道閘門。
對 AI 爬蟲的特殊性
AI 爬蟲分為訓練語料抓取與搜索索引抓取兩類,標識不同。放行訓練爬蟲並不等於放行搜索索引爬蟲,反之亦然。
因此 robots.txt 中僅放行訓練類爬蟲,對「被 AI 引用」這一目標沒有幫助。
緩存陷阱
robots.txt 常被 CDN 緩存。修改源站文件後,若緩存未過期,爬蟲讀到的仍是舊版本,導致「源站已修復但爬蟲拿不到」的假象。
實踐建議為 robots.txt 設置不緩存的緩存策略,確保修改立即生效。
數字事實
以下數據均可獨立核驗,核驗日期指來源頁面或官方文檔的讀取日期。
| 指標 | 數值 | 來源 | 核驗日期 |
|---|---|---|---|
| robots.txt 的標準為 IETF RFC 9309 | 2022 年正式發布 | IETF RFC 9309 | 2026-10-07 |
| OpenAI 的訓練爬蟲與搜索索引爬蟲使用不同的用戶代理標識 | 兩者需分別聲明抓取許可 | OpenAI 官方爬蟲文檔 | 2026-10-07 |
| robots.txt 位於站點根目錄 | 路徑為 /robots.txt | RFC 9309 規定 | 2026-10-07 |
對比
| 爬蟲類別 | 代表標識 | 放行對被引用的意義 |
|---|---|---|
| 訓練語料抓取 | GPTBot | |
| 搜索索引抓取 | OAI-SearchBot | |
| 用戶觸發的即時抓取 | ChatGPT-User |
操作步驟
- 按標識分別聲明 —— 對訓練類與索引類爬蟲分別寫明 User-agent 分組,不要合併。
- 顯式放行 —— 對需要放行的爬蟲使用 Allow 規則,避免依賴默認行為的推斷。
- 設置不緩存 —— 為 robots.txt 響應設置 no-store 緩存策略,防止 CDN 緩存舊版本。
- 實測響應 —— 以真實請求驗證 robots.txt 返回 200 且內容為最新版本,而非僅檢查源站文件內容。
- 聲明 sitemap —— 在 robots.txt 中聲明 Sitemap 地址,供爬蟲發現站點結構。
局限與爭議
- robots.txt 是自願遵循規範,不是強制訪問控制。惡意或配置錯誤的爬蟲可能不遵守。
- 過寬的放行規則會消耗站點帶寬,需要在可見度與資源消耗之間權衡。