先講答案:在 robots.txt 封 OpenAI 的爬蟲 GPTBot,只會阻止 OpenAI 把你的網站內容用於訓練模型,不會令你的網站從 ChatGPT 的搜尋答案消失。負責搜尋的是另一支爬蟲 OAI-SearchBot。OpenAI 的官方文件寫得很直接:兩個設定互相獨立,網站管理員可以放行 OAI-SearchBot 以出現在搜尋結果,同時封鎖 GPTBot 以表明內容不可用於訓練。
真正令網站從 ChatGPT 消失的,是封錯了一支,或者三支一併封掉。這一篇把三支爬蟲逐支分清楚,再給四種取態的 robots.txt 寫法。全部 AI 爬蟲的名單、CDN 誤封排查與日誌核實方法,工具頁的《AI 爬蟲完整指南》已經寫了,這裏不重複。
三支 OpenAI 爬蟲各自做甚麼
OpenAI 用三個不同的 user-agent 存取網站,各有各的用途。以下全部引自 OpenAI 的爬蟲說明頁。
GPTBot:訓練。OpenAI 寫明它「用來抓取可能用於訓練生成式 AI 基礎模型的內容」,封了它等於表明網站內容不應用於訓練。它是三支之中最多人聽過的一支,也是最多人封錯的一支。要留意「GPTBot」這個名稱在搜尋結果會撞上一間名字相近的公司,所以本文第一次提到時都寫「OpenAI 的爬蟲 GPTBot」。
User-agent 範例:Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot
OAI-SearchBot:搜尋收錄。OpenAI 寫明它「用來讓網站出現在 ChatGPT 搜尋功能的結果」,並明確指出:選擇退出 OAI-SearchBot 的網站不會在 ChatGPT 搜尋答案中顯示,只可能以導覽連結形式出現。OpenAI 建議在 robots.txt 放行它,並放行官方公布的 IP 範圍。
User-agent 範例:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36; compatible; OAI-SearchBot/1.4; +https://openai.com/searchbot
ChatGPT-User:用戶即時開啟連結。當用戶在 ChatGPT 或自訂 GPT 提問,它可能以這個 user-agent 即時造訪某個網頁。OpenAI 寫明它不會自動爬取整個網站;因為動作由用戶發起,robots.txt 規則未必適用;而且它不決定內容能否出現在搜尋,管理搜尋要用 OAI-SearchBot。
User-agent 範例:Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot
一句總結:GPTBot 管未來的模型知道甚麼,OAI-SearchBot 管你今天有否出現在答案裏,ChatGPT-User 是用戶點開你的連結時派來讀頁的程式。
封錯一支會發生甚麼事
把三支混為一談,最常見的結果有兩種。
第一種是想封訓練卻封了搜尋。網站管理員聽說「AI 會拿內容去訓練」,一口氣把三支都封掉。結果是客戶在 ChatGPT 問「香港哪一間公司做網頁寄存」時,這個網站不會出現在答案裏,而競爭對手會。訓練的部分確實封住了,但代價是即時的曝光。
第二種是以為封了搜尋卻沒有封。有些網站只封 ChatGPT-User,以為這樣就不會被 ChatGPT 引用。按 OpenAI 的說明,ChatGPT-User 不決定搜尋收錄,而且用戶發起的動作未必受 robots.txt 約束,所以這樣寫等於甚麼都沒有封。
還有一個時間差要知道:OpenAI 寫明,robots.txt 改動後,搜尋系統大約需要 24 小時才會調整。改完當天看不到變化是正常的。
四種取態的 robots.txt 寫法
先講一條 robots.txt 的規則,很多自我封鎖都由它而起。按 Google 的 robots.txt 規格說明,每支爬蟲只會套用一組規則,即 user-agent 最相符的那一組;爬蟲專屬的規則組與 * 通用組不會合併。換言之,如果你的 robots.txt 有 User-agent: * 加 Disallow: /,而沒有為 OAI-SearchBot 另開一組,OAI-SearchBot 就會套用通用組,整個網站被封。反過來,只要為某支爬蟲另開一組,它就只看自己那一組。
以下四段可以直接複製。
取態一:全開。訓練與搜尋都放行,適合希望盡量被 AI 引用的公司網站與內容網站。
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Allow: /
取態二:只擋訓練。保留 ChatGPT 搜尋曝光,但不讓內容進入訓練。對大多數公司網站來說,這是較穩妥的選擇。
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Allow: /
取態三:全擋。訓練、搜尋、用戶開啟全部拒絕。只適合確定不想在 ChatGPT 出現的網站,例如內部系統或會員專區。要知道 ChatGPT-User 由用戶觸發,OpenAI 文件寫明 robots.txt 未必適用,所以這一組只是表明立場。
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Disallow: /
User-agent: ChatGPT-User
Disallow: /
取態四:只開搜尋。只放行 OAI-SearchBot,其餘兩支拒絕。與取態二的分別只在 ChatGPT-User,實際效果接近取態二。
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Disallow: /
無論選哪一種,都要確認這幾組寫在 User-agent: * 那一組之外,而且 robots.txt 本身可以用瀏覽器直接開啟。決定放行之後,可以再在根目錄加一份 llms.txt,幫模型更快掌握網站重點,寫法見工具頁的《llms.txt 完整教學》,應否加與怎樣驗見本系列的《llms.txt 是甚麼?》。
其他爬蟲的分工也是一樣的邏輯
訓練與搜尋分開兩支,是各間模型商的共同做法。以下只列官方文件有說明的幾支,全名單見工具頁的《AI 爬蟲完整指南》。
| 公司 | 訓練用途 | 搜尋或用戶用途 | 官方說明的要點 |
|---|---|---|---|
| Anthropic | ClaudeBot | Claude-SearchBot、Claude-User | 三支都尊重 robots.txt;封 ClaudeBot 表示日後內容不納入訓練 |
| Perplexity | 無 | PerplexityBot、Perplexity-User | PerplexityBot 只做搜尋,不用於訓練基礎模型;Perplexity-User 由用戶觸發,一般不理會 robots.txt |
| Google-Extended | Googlebot | Google-Extended 只是 robots.txt 的控制項,沒有獨立爬蟲;封它不影響 Google 搜尋收錄與排名 | |
| Apple | Applebot-Extended | Applebot | 封 Applebot-Extended 的網頁仍可出現在搜尋結果 |
Google 那一行值得多講一句。Google 搜尋中心寫明,AI 摘要與 AI 模式的內容控制走的是 Googlebot 的 robots.txt 與 nosnippet 一類標記;Google-Extended 管的是內容可否用於訓練 Gemini 模型,以及可否作為 Gemini 應用與 Vertex AI 回答時的參考依據(grounding)。封了 Google-Extended 不會令網站從 AI 摘要消失,想控制 AI 摘要要用另一套方法。
香港網站特別要留意:CDN 可能已經替你封了
robots.txt 寫得再開放,請求若在 CDN 或防火牆一層已被擋下,爬蟲根本到不了你的伺服器。Cloudflare 在 2025 年 7 月 1 日宣布,新加入的域名在設定時會被問到是否允許 AI 爬蟲,預設立場由放行改為由網站管理員控制;Cloudflare 同時指出,自 2024 年 9 月推出一鍵封鎖以來,已有超過一百萬客戶選擇封鎖 AI 爬蟲。如果你的網站放在 Cloudflare 一類服務後面,有可能在不知情之下已經把 OAI-SearchBot 擋在門外,要到服務商的控制台確認一次。
怎樣驗自己有否封錯
三個方法,由淺入深。
- 看 robots.txt。開啟
https://你的域名/robots.txt,找有否GPTBot、OAI-SearchBot、ChatGPT-User這三組,以及User-agent: *那一組有否Disallow: /。 - 查伺服器日誌。搜尋上面三個 user-agent 字串,看狀態碼:200 是正常,403 是被擋。要核實來源真偽,可以對照 OpenAI 公布的 IP 清單(gptbot.json、searchbot.json、chatgpt-user.json)。若網站前面有 CDN,被 CDN 擋下的請求不會出現在來源伺服器日誌,要到 CDN 的控制台查。
- 用免費工具掃一次。AEO Auditor 會一併檢查 robots.txt、AI 爬蟲存取與結構化數據,輸入網址約 30 秒出結果。
封鎖與放行都是正當的選擇,問題只在於有否封錯對象。分清楚三支爬蟲之後,再按自己的取態寫 robots.txt,就不會出現「以為只封了訓練,其實把客戶也封了」的情況。爬蟲放行只是第一步,之後內容怎樣寫才會被 AI 引用,見本站較早的《GEO 指南》。
這裏的 AEO 指答案引擎優化(Answer Engine Optimization),與海關的認可經濟營運商計劃無關。
常見問題
封鎖 GPTBot 會否令網站從 ChatGPT 消失?
不會。GPTBot 負責收集訓練內容,網站能否出現在 ChatGPT 的搜尋答案由 OAI-SearchBot 決定。OpenAI 寫明兩個設定互相獨立。
改動 robots.txt 後 ChatGPT 搜尋何時調整?
OpenAI 寫明,robots.txt 改動後,搜尋系統大約需要 24 小時才會調整。
只封 ChatGPT-User 能否阻止 ChatGPT 引用網站?
不能。按 OpenAI 的說明,ChatGPT-User 不決定搜尋收錄,而且由用戶發起的動作未必受 robots.txt 約束。管理 ChatGPT 搜尋要用 OAI-SearchBot。
更多問題見工具頁的常見問題頁。
資料來源
查閱日期:2026-10-17
- OpenAI《Overview of OpenAI Crawlers》(三支爬蟲的用途、user-agent 字串、IP 清單、24 小時調整期、ChatGPT-User 與 robots.txt 的關係):https://developers.openai.com/api/docs/bots
- Google 搜尋中心《How Google interprets the robots.txt specification》(user-agent 規則組的套用方式):https://developers.google.com/crawling/docs/robots-txt/robots-txt-spec
- Google 搜尋中心《Overview of Google crawlers and fetchers》(Google-Extended 的定義與影響範圍):https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers
- Google 搜尋中心《AI features and your website》(AI 摘要與 AI 模式的內容控制方式):https://developers.google.com/search/docs/fundamentals/ai-optimization-guide
- Anthropic 支援中心《Does Anthropic crawl data from the web, and how can site owners block the crawler?》:https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler
- Perplexity《Perplexity Crawlers》:https://docs.perplexity.ai/docs/resources/perplexity-crawlers
- Apple 支援《About Applebot》:https://support.apple.com/en-us/119829
- Cloudflare 新聞稿《Cloudflare Just Changed How AI Crawlers Scrape the Internet-at-Large》(2025-07-01):https://www.cloudflare.com/press-releases/2025/cloudflare-just-changed-how-ai-crawlers-scrape-the-internet-at-large/