OpenAI爬虫完全指南:如何让您的网站出现在ChatGPT搜索中

OpenAI运营着四个独立的网络爬虫,每个爬虫都有不同的目的、不同的robots.txt指令,以及对您的网站是否出现在ChatGPT中的不同影响。2026年7月14日,OpenAI更新了其爬虫文档,明确了版本号变更可能性和robots.txt标记。

OpenAI爬虫完全指南:如何让您的网站出现在ChatGPT搜索中

OpenAI运营着四个独立的网络爬虫,每个爬虫都有不同的目的、不同的robots.txt指令,以及对您的网站是否出现在ChatGPT中的不同影响。2026年7月14日,Search Engine Roundtable报道OpenAI悄悄更新了其爬虫文档,明确了两点:用户代理字符串中的版本号可能会随时间变化,以及OpenAI在抓取robots.txt文件时可能会附加一个robots.txt标记,以帮助网站所有者在服务器日志中区分这些请求。

这不是重大的政策转变。但这是一个很好的理由来审查您的robots.txt文件,确保您没有在允许训练爬虫的同时意外阻止了ChatGPT的搜索爬虫,反之亦然。这四个爬虫是独立的——您可以只允许搜索而不允许训练,并且这些设置不会相互影响。

您需要了解的四个OpenAI爬虫

OpenAI的官方文档(2026年7月更新,详见developers.openai.com/api/docs/bots)定义了四个用户代理。每个都有特定的角色和特定的robots.txt令牌。

用户代理

用途

爬取触发条件

用于AI训练?

出现在ChatGPT搜索中?

OAI-SearchBot

爬取网页以便在ChatGPT搜索结果中展示页面

自动、定期

是——这是让您被引用的爬虫

GPTBot

爬取可能用于生成式AI模型训练的内容

自动、定期

否——仅用于训练数据

OAI-AdsBot

验证提交到ChatGPT广告的广告着陆页

由广告提交触发

ChatGPT-User

当用户向ChatGPT提问或使用Custom GPT时访问页面

用户发起

不适用——实时页面获取,非爬取

最重要的区别是:OAI-SearchBot和GPTBot是独立的爬虫。阻止GPTBot不会阻止ChatGPT搜索结果。阻止OAI-SearchBot会将您的网站从ChatGPT的搜索答案中移除(尽管如果用户直接输入您的URL,它仍可能作为导航链接出现)。

四种OpenAI爬虫类型比较:OAI-SearchBot、GPTBot、OAI-AdsBot、ChatGPT-User

这次更新为什么重要

2026年7月14日的文档更新不是关于新爬虫或新政策。而是关于透明度。进行了两项更改:

版本号可能会变化。 文档中记录的用户代理字符串显示为OAI-SearchBot/1.4GPTBot/1.4,但OpenAI现在明确指出版本号可能会更新。如果您的服务器日志或WAF规则匹配特定的版本字符串(例如OAI-SearchBot/1.2),您可能会意外阻止较新的版本。始终匹配机器人名称,而不是版本号。

用于robots.txt抓取的robots.txt标记。 当OpenAI抓取您的robots.txt文件时,它可能会使用带有额外robots.txt标记的用户代理字符串。这有助于网站所有者在服务器日志中区分robots.txt请求和常规内容请求——特别是当日志不包含路径时。标记如下所示:

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; robots.txt; +https://openai.com/searchbot

版本号后的robots.txt令牌表示此请求专门用于获取robots.txt文件,而不是爬取内容页面。

如何配置robots.txt以实现ChatGPT可见性

最常见的问题很简单:是否应该允许OAI-SearchBot?答案取决于您是否希望您的页面出现在ChatGPT搜索结果中。

如果您希望ChatGPT在搜索答案中展示您的内容,请允许OAI-SearchBot:

User-agent: OAI-SearchBot
Allow: /

如果您希望允许搜索可见性但阻止AI训练,请允许OAI-SearchBot并阻止GPTBot:

User-agent: OAI-SearchBot
Allow: /

User-agent: GPTBot
Disallow: /

如果您想同时阻止搜索和训练(除非有特定原因,否则不建议):

User-agent: OAI-SearchBot
Disallow: /

User-agent: GPTBot
Disallow: /

ChatGPT-User不需要robots.txt配置。 因为这些访问是用户发起的(一个人向ChatGPT提问,ChatGPT获取页面来阅读),所以robots.txt规则可能不适用。OpenAI的文档明确指出了这一点。您不能依赖robots.txt来控制ChatGPT-User——如果您需要阻止实时页面获取,则需要服务器端WAF规则或基于IP的阻止。

IP白名单因素

OpenAI为每个爬虫发布了IP范围。如果您的WAF或CDN阻止来自未知IP范围的请求,即使您的robots.txt允许,您可能也在悄悄阻止OpenAI的爬虫。

爬虫

IP范围URL

OAI-SearchBot

https://openai.com/searchbot.json

GPTBot

https://openai.com/gptbot.json

OAI-AdsBot

https://openai.com/adsbot.json

ChatGPT-User

https://openai.com/chatgpt-user.json

如果您的网站使用Cloudflare、AWS WAF或具有启用机器人管理的类似服务,请验证这些IP范围未被阻止或挑战。如果爬虫永远无法到达您的服务器,robots.txt的Allow规则将毫无用处。

实用审计清单

运行此清单以确保您的网站已正确配置ChatGPT AI索引:

检查OAI-SearchBot的robots.txt。 它是被明确允许还是阻止?如果两者都不是,它默认为允许——但明确的规则更安全。

单独检查GPTBot。 独立决定是否希望您的内容用于模型训练。

检查您的WAF或CDN机器人规则。 不要仅依赖robots.txt。验证OpenAI发布的IP范围未被阻止或被CAPTCHA挑战。

检查服务器日志匹配机器人名称,而不是版本。 如果您有匹配OAI-SearchBot/1.2GPTBot/1.0的规则,请更新它们以匹配机器人名称,无论版本如何。OpenAI已确认版本号可能会变化。

允许约24小时使更改生效。 OpenAI表示,在robots.txt更新后,他们的系统大约需要24小时来调整。

使用ChatGPT搜索进行测试。 进行更改后,向ChatGPT提出与您的内容相关的问题,看看您的页面是否出现在搜索结果中。

阻止ChatGPT可见性的常见错误

错误1:使用 blanket Disallow阻止所有机器人。

User-agent: *
Disallow: /

这会阻止所有爬虫,包括OAI-SearchBot。如果您想阻止特定机器人,请按名称进行。

错误2:阻止GPTBot并假设ChatGPT搜索也被阻止。 GPTBot仅用于训练。如果您阻止GPTBot但不限制OAI-SearchBot,您的页面仍可能出现在ChatGPT搜索中。如果您想从ChatGPT搜索答案中排除,您必须专门阻止OAI-SearchBot。

错误3:在WAF规则中匹配版本号。 OpenAI已确认版本号可能会变化。匹配OAI-SearchBot/1.2的规则在版本更新为1.31.4时将失败。匹配字符串OAI-SearchBot而不包含版本后缀。

错误4:忘记ChatGPT-User。 当用户向ChatGPT提问时,ChatGPT可能会使用ChatGPT-User代理实时获取页面。这不是爬取——这是用户发起的请求。您的robots.txt规则可能不适用。如果您需要阻止这些请求,请使用服务器端控制,而不是robots.txt。

错误5:忽略IP白名单。 某些CDN和WAF具有积极的机器人检测,会挑战或阻止未知的爬虫。即使您的robots.txt正确,爬虫也可能永远无法到达您的内容。检查您的WAF日志中来自OpenAI IP范围的被阻止请求。

这对您的AI搜索可见性策略意味着什么

ChatGPT不再仅仅是一个聊天机器人。它拥有具有实时网页结果的完整搜索引擎。要将您的内容放入这些结果中,需要与您已经为Googlebot和Bingbot管理的相同的爬取可访问性,但使用OpenAI特定的规则。

值得注意的是:OpenAI将搜索和训练视为独立的系统。您可以在不同意模型训练的情况下参与ChatGPT搜索。Google在Googlebot之上使用Google-Extended做类似的事情,但OpenAI的方法从一开始就更精细——四个独立的爬虫,四个独立的决定。

如果您正在为AI爬虫运行robots.txt审计,请按爬虫逐一做出决定,而不是使用 blanket 允许或拒绝规则。

常见问题

允许OAI-SearchBot意味着我的内容将用于训练OpenAI的模型吗?

不。OAI-SearchBot仅用于ChatGPT搜索结果。训练数据收集由GPTBot处理,这是一个具有单独robots.txt指令的独立爬虫。您可以在允许OAI-SearchBot的同时阻止GPTBot。

robots.txt更改需要多长时间才能生效?

OpenAI表示,在robots.txt更新后,他们的系统大约需要24小时来调整。这比Google的典型robots.txt刷新周期更快。

如果我阻止OAI-SearchBot,我的网站仍会出现在ChatGPT中吗?

是的,但仅作为导航链接——不会作为搜索答案中的来源。如果用户直接向ChatGPT输入您的URL,它仍可以链接到您的网站。但您的页面不会被引用为ChatGPT搜索生成答案的来源。

用户代理字符串中的robots.txt标记是什么?

这是OpenAI在获取您的robots.txt文件时附加到用户代理字符串的额外令牌(robots.txt)。它帮助您在服务器日志中区分robots.txt获取请求和常规内容爬取请求,特别是当日志格式不包含请求路径时。

我应该在服务器规则中匹配版本号吗?

不。OpenAI已明确指出版本号可能会变化。在您的WAF规则、日志过滤器或访问控制列表中匹配机器人名称(例如OAI-SearchBotGPTBot),而不包含版本后缀。

我可以用robots.txt控制ChatGPT-User吗?

不可靠。ChatGPT-User访问是由用户提问发起的,而不是自动爬取。OpenAI的文档指出,robots.txt规则可能不适用于这些用户发起的请求。如果您需要阻止实时页面获取,请使用服务器端控制。

作者:Julian Mercer,Auspia拥有14年经验的技术SEO实践者。Julian撰写关于爬取能力、robots.txt配置、结构化数据以及使内容对搜索引擎和AI系统都可读的技术基础的文章。

探索此主题

继续阅读同一增长脉络