robots.txt 合規說明
了解 robots.txt 如何影響網站的搜尋發現度、頁面渲染完整性、內容開放策略,
以及 AI 系統對網站內容的理解方式。
對 Aulait GEO Scorecard 而言,robots.txt 不是一個附屬技術檔案,而是網站對搜尋引擎、
AI crawler 與外部代理公開說明抓取邊界的第一層入口。它會影響網站能不能被抓、能不能被完整渲染、
以及外部系統是否能穩定理解你的內容開放方式。
我們將 robots.txt 納入評分,不是因為「有檔案就加分」,而是因為它會直接影響三件事情:
網站是否能被正常抓取、搜尋引擎是否能取得渲染頁面所需的關鍵資源,以及網站是否清楚表達自己對不同類型 bot 的開放邊界。
這份檔案是網站提供給外部系統的第一份規則說明,不只是 SEO 顧問或工程師才需要關心的技術細節。 如果這裡缺失、混亂或衝突,後面的 HTML、JSON-LD、Meta Tag 即使做得不差,也可能因為入口規則寫錯而無法正常發揮。
它決定 crawler 能不能進站、哪些路徑能讀、哪些資源可渲染,直接影響內容發現度與索引效率。
它影響 AI 搜尋、引用型產品與訓練型 crawler 對內容的取用邊界,會影響理解、引用與收錄方式。
robots.txt 是放在網站根目錄的純文字檔案,用來告訴 crawler 哪些路徑可以抓、哪些路徑不建議抓。
它是 Robots Exclusion Protocol 的實作入口,Google 會先抓取並解析這份檔案,再決定後續抓取方式;RFC 9309 也已將這套協議標準化。
一份最基本的寫法通常包含下列欄位:
User-agent:規則對哪一類 crawler 生效。Allow:允許抓取的路徑。Disallow:不允許抓取的路徑。Sitemap:提供 sitemap 的完整位置。User-agent: *
Disallow:
Sitemap: https://example.com/sitemap.xml
上面的意思很簡單:對所有 crawler 沒有額外封鎖,並且主動提供 sitemap 位置。對陌生網站來說, 這是一種可預測的公開姿態。你不是要外部系統自己猜網站結構,而是主動把抓取邊界講清楚。
如果網站沒有這份檔案,部分 crawler 仍可能按照預設方式抓取公開內容,但你就失去了主動定義規則的機會。 對商業網站而言,這通常不是最理想的做法,因為它讓抓取政策回到「預設狀態」,而不是你的明確策略。
這也是為什麼很多團隊會誤用 robots.txt。只要把某個資料夾寫進 Disallow,
並不代表任何人都看不到它;那只表示遵守協議的 crawler 會尊重這個請求。對權限與安全問題,正確工具永遠是後端授權與存取控制。
Google 官方也特別提醒,如果某頁本身已被 robots.txt 封鎖,crawler 可能連頁面上的
meta robots 設定都讀不到。也就是說,想達到「可抓但不收錄」時,很多情況應考慮 noindex,
而不是先把頁面整個擋住。
robots.txt 最常見的問題不是沒有,而是「看起來有寫,實際上寫錯」。
一旦入口規則出現錯誤,會讓搜尋與 AI 系統拿到扭曲、殘缺或不一致的網站版本。
若對 User-agent: * 設定 Disallow: /,等於告訴多數 crawler 不要抓整個網站。
這常見於測試環境上線忘記解除的情況。站長自己打開網站一切正常,但自然搜尋、內容更新與 AI 搜尋引用卻幾乎停擺。
現代網站的內容不再只靠靜態 HTML 呈現。若 CSS、JavaScript、字型、圖片或框架關鍵輸出路徑被封鎖, 搜尋引擎與 AI 系統就可能看不到完整頁面。對 Next.js、React、Vue、SPA 或混合渲染網站尤其明顯。
人看到的頁面與機器看到的頁面差太多,會直接影響內容理解、摘要生成、引用品質與搜尋表現。
在 robots.txt 裡提供 Sitemap 是加速 crawler 理解網站結構的好做法,
但前提是這個 URL 必須是真的、可連線、回傳正確內容。若你主動提供了一份錯誤導覽,效果往往比沒提供更差。
規則越複雜,不同 crawler 的解讀落差就越大。團隊最終常不是輸在 parser,而是輸在自己也說不清楚每條規則的目的。
一份高品質的 robots.txt 通常不是最花的那份,而是最容易預測、最容易維護的那份。
過去多數網站只會問一個問題:要不要讓搜尋引擎來抓?現在則需要面對更多層次: 我要不要被 AI 搜尋引用?我要不要讓內容進入訓練用途?我要不要接受使用者觸發型代理讀取頁面?
這些問題沒有單一標準答案,但有一個共同前提:你需要有地方把規則講清楚,而
robots.txt 正是目前最被主流平台理解的入口之一。
Google-Extended 可用來表達內容是否可被用於 Gemini 模型訓練與部分 grounding 用途。
OAI-SearchBot 與 GPTBot 分別對應搜尋曝光與模型訓練兩種不同用途。
官方文件已明確說明 ClaudeBot 會尊重 robots.txt 規則。
PerplexityBot 也提供對 robots.txt 的官方說明與使用方式。
現在的重點是把規則說清楚,而非一味追求更開放或更封閉。 無論採取保守或積極策略,都應用一致、可理解且符合主流規範的方式表達內容開放邊界。
在 Aulait GEO Scorecard 中,robots.txt 分數不是單看檔案是否存在,而是綜合評估它是否達到
「可讀、可抓、可渲染、規則清楚」四個層次。
User-agent 群組。/api/、/_next/、/static/、/build/ 等關鍵路徑。Sitemap 宣告。Sitemap 是合法絕對網址、可存取且內容型態正確。高分不代表所有 bot 都必須全面開放,而是代表你的規則清楚、邊界一致、限制合理, 並且不會誤傷本來應該被外部系統讀到的內容。
高品質不等於複雜。對大多數網站來說,好的做法往往是「簡單、明確、少例外」。
User-agent: *
Disallow: /admin/
Disallow: /internal/
Sitemap: https://example.com/sitemap.xml
如果你想對 AI 產品採取更細緻的開放策略設定,也可以再加入特定群組:
User-agent: OAI-SearchBot
Allow: /
User-agent: GPTBot
Disallow: /
這類配置背後的策略意圖很清楚:搜尋發現度保留,但訓練用途另行限制。是否採用, 應依品牌策略、授權政策、流量目標與內容風險承擔來決定,而不是盲目套版。
robots.txt 分數要傳達的核心訊息,不是「你的網站有沒有一個文字檔」,
而是下列這些更實際的問題:
因此,當一個網站在這個面向得分偏低,通常代表的不是單一技術細節出錯,而是整體可取用性與機器可理解性存在規則缺口。 對產品頁面來說,這樣的解釋也比較容易讓使用者理解分數的意義與風險。
下列正式規範、搜尋引擎文件與 AI 平台官方文件,是本評分面向的外部依據。