AI 知識庫 · 讓 AI 幫你介紹

如何檢查網站有沒有擋到 ChatGPT、Bing、Google 的爬蟲?

作者:數位聖經編輯部|發布

用三個步驟檢查:打開 robots.txt 確認沒有禁止 OAI-SearchBot、Bingbot、Googlebot 等爬蟲;用 curl 模擬爬蟲,確認 CDN 或防火牆沒有擋下、也沒有 noindex;再到 Google Search Console 與 Bing Webmaster Tools 確認頁面已被索引。任何一層擋住,AI 就讀不到你的網站。

重點摘要
  • 爬蟲可能在三個地方被擋:robots.txt、CDN/防火牆、noindex 標記。
  • robots.txt 的陷阱:爬蟲只遵守最符合自己名稱的那一組規則,不會同時套用 `User-agent: *`。
  • 擋掉 GPTBot(訓練用)不會影響 ChatGPT 搜尋引用;擋掉 OAI-SearchBot 才會。
  • CDN 的「封鎖 AI 爬蟲」或機器人防護設定,可能在你不知道的情況下擋掉 AI。
  • 最後一定要到 Search Console 與 Bing Webmaster Tools 確認頁面真的被索引。

先認識主要的爬蟲

爬蟲名稱 用途 擋掉的影響
Googlebot Google 搜尋,包含 AI Overviews 與 AI 模式 從 Google 搜尋與 Google 的 AI 回答中消失
Google-Extended Google:控制內容是否用於 Gemini 等 AI 模型 不影響 Google 搜尋的收錄與排名
Bingbot Bing 搜尋,以及以 Bing 為基礎的 Microsoft Copilot 從 Bing 與 Copilot 的網路回答中消失
OAI-SearchBot ChatGPT 搜尋:發現、引用並連結網站 ChatGPT 搜尋難以引用你
ChatGPT-User 使用者在 ChatGPT 中要求讀取某個網頁 使用者貼你的網址給 ChatGPT 時讀不到
GPTBot OpenAI 模型訓練 不影響 ChatGPT 搜尋引用
PerplexityBot Perplexity 搜尋結果 Perplexity 難以引用你
Claude-SearchBot Anthropic:提升 Claude 搜尋結果品質 Claude 搜尋較難找到你
ClaudeBot Anthropic 模型訓練 不影響搜尋引用

名稱與用途以各公司官方文件為準(見文末參考資料),新的爬蟲會不斷出現。

步驟一:檢查 robots.txt

在瀏覽器打開 https://你的網域/robots.txt。

1. 找有沒有整站禁止

User-agent: *
Disallow: /

這兩行會擋掉所有遵守 robots.txt 的爬蟲。網站改版或從測試環境搬到正式環境時,這兩行常被忘記刪掉。

2. 找有沒有點名禁止

User-agent: OAI-SearchBot
Disallow: /

逐一確認表格中你想被讀取的爬蟲,沒有被點名禁止。

3. 注意「分組」陷阱

robots.txt 的規則是:爬蟲只遵守最符合自己名稱的那一組,不會再套用 User-agent: * 那一組。

User-agent: *
Disallow: /admin/

User-agent: Googlebot
Allow: /

上面的寫法看起來是「全部爬蟲都不能進 /admin/,Googlebot 什麼都能讀」,但實際上 Googlebot 只會看自己那一組,所以 Googlebot 可以讀 /admin/。反過來,如果你替某個爬蟲單獨寫了一組禁止規則,它也只會遵守那一組。

比較安全的寫法,是把需要相同規則的爬蟲放在同一組:

User-agent: *
User-agent: Googlebot
User-agent: OAI-SearchBot
Allow: /
Disallow: /admin/

數位聖經在建立自己網站的 robots.txt 時,就是在檢查中發現了這個問題,後來改成把所有爬蟲放在同一組規則。

步驟二:用 curl 模擬爬蟲

robots.txt 沒問題,不代表爬蟲進得來。CDN(例如 Cloudflare)與網站防火牆可能把爬蟲當成攻擊擋掉,有些 CDN 也提供「一鍵封鎖 AI 爬蟲」的設定,新網站可能預設就是開啟的。

在終端機執行(把網址換成你的文章頁):

curl -s -o /dev/null -w "%{http_code} %{size_download}\n" \
  -A "Mozilla/5.0 (compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot)" \
  https://你的網域/某篇文章/

把 -A 後面換成 Googlebot、bingbot、PerplexityBot 等名稱各測一次。

結果 代表
200 加上正常的檔案大小 這一層沒擋
403、429、503 被 CDN 或防火牆擋下,請檢查機器人防護與 AI 爬蟲設定
200 但檔案很小 可能收到的是驗證頁(「請確認你是真人」),等於被擋

同時檢查有沒有 noindex:

curl -sI https://你的網域/某篇文章/ | grep -i x-robots-tag

如果出現 noindex,或頁面原始碼中有 <meta name="robots" content="noindex">,這一頁就不會被搜尋引擎收錄。測試環境常用 noindex 防止被收錄,搬到正式環境時務必確認已移除。

確認重要內容是文字:用 curl 抓下頁面後,搜尋頁面上一句重要的話(例如公司服務的描述)。如果抓不到,代表這段內容是用 JavaScript 產生、或放在圖片裡,部分爬蟲可能讀不到。

步驟三:確認真的被索引

  • Google Search Console:用「網址檢查」輸入重要頁面,確認「網址已在 Google 服務中」
  • Bing Webmaster Tools:用「URL 檢查」確認頁面已被索引

兩邊都要做。Bing 的索引會影響 Bing 搜尋與 Microsoft Copilot,很多台灣企業只設定了 Google,忽略了 Bing。

檢查清單

項目 怎麼確認
robots.txt 沒有整站禁止 沒有 User-agent: * 搭配 Disallow: /
想被讀取的爬蟲沒有被點名禁止 逐一比對上方爬蟲表
沒有分組陷阱 單獨列出的爬蟲,規則是否完整
CDN/防火牆沒有擋 curl 各爬蟲名稱都回傳 200 與正常大小;CDN 的 AI 爬蟲設定已確認
沒有 noindex 回應標頭與 meta 都沒有 noindex
重要內容是 HTML 文字 curl 抓得到關鍵句子
已被 Google 索引 Search Console 網址檢查
已被 Bing 索引 Bing Webmaster Tools URL 檢查

這是 GEO 五個支柱中的第一個「可被讀取」,完整方法見 GEO 是什麼?。如果檢查後仍不確定問題在哪裡,數位聖經的 AI 能見度健檢 會逐項檢查技術、Entity 與內容。

常見問題

我不想讓 AI 拿我的內容去訓練模型,但想被 ChatGPT 搜尋引用,可以嗎?

可以。OpenAI 把搜尋用的 OAI-SearchBot 和訓練用的 GPTBot 分開,可以在 robots.txt 禁止 GPTBot、同時允許 OAI-SearchBot。Google 也一樣,禁止 Google-Extended 不影響 Google 搜尋的收錄與排名。

用 curl 測試成功,就代表真的爬蟲也能進來嗎?

不一定。有些 CDN 會用 IP 驗證爬蟲身分:curl 偽裝的 User-Agent 可能被擋,但真正的爬蟲能通過;也可能相反。curl 測試能找出大部分問題,但最後仍要看 CDN 的防火牆紀錄,以及 Search Console、Bing Webmaster Tools 的實際索引結果。

robots.txt 改完多久生效?

爬蟲會定期重新讀取 robots.txt,通常在一天內就會讀到新版本,但重新抓取與索引頁面需要更久。修改後可以在 Search Console 與 Bing Webmaster Tools 對重要頁面要求重新檢查。

參考資料

延伸閱讀