面向 ChatGPT 的技术适配:robots、llms.txt 与结构化数据怎么配-墨子学院
摘要:内容再好,机器抓不到、读不懂也是白搭。本文从技术层讲清怎么为 ChatGPT 及其检索放行正确的爬虫、怎么用 llms.txt 给模型一份可读的站点说明、怎么用结构化数据和 sitemap 帮助理解与发现。核心是把技术障碍清掉,让模型能顺畅地抓取、理解并找到你的关键页面。
摘要:内容写得再扎实,机器抓不到、读不懂、找不到,一切归零。这一篇从技术层讲清怎么为 ChatGPT 及其检索放行正确的爬虫、怎么用 llms.txt 给模型一份可读的站点说明、怎么用结构化数据与 sitemap 帮助它理解并发现你的关键页面。核心结论:技术 GEO 不追求高深,追求把障碍清掉——让模型能顺畅地抓取、理解并找到你最希望它引用的内容。
一句话先说结论:内容决定你能不能被说得好,技术决定你能不能被看到;robots 放行是门,正文可直读是路,llms.txt 与结构化数据是导览图,缺一环,模型就到你家门口却进不来。
到这里,选题、事实、权威三块内容层已经讲完。但从这一篇开始,我们要回答一个非常现实的问题:上面那些好东西,怎么真正送到 ChatGPT 面前?很多团队内容不缺,却始终不被联网引用,一查发现是 robots 把 AI 爬虫挡在了外面,或者整站正文靠前端渲染、机器抓到的只是空壳。这类问题不解决,内容做得再用心也是自娱自乐。技术适配就是把这些隐形的门和路修通,它不难,但要知其所以然,才能既放行该放行的、又守住该守住的。这一篇给你一份从抓取到理解的完整技术清单。
一、技术 GEO 的定位:不做加分项,做入场券
要先摆正预期:技术层几乎不会让你的内容"变得更好",它做的是"让你有被看到的可能"。抓取、渲染这些做到位,模型才有机会读到你;做不到,前面所有努力都传不出去。所以它是入场券、是地基,优先级极高却常常被推迟。判断自己技术 GEO 做没做好,标准也很朴素——不是"配置多不多",而是"模型抓你关键页时,能不能拿到完整、干净、可理解的正文"。这一条不过,其余免谈。

二、robots.txt:先把该放行的爬虫请进来
一切从 robots.txt 开始。这份文件告诉爬虫哪些能抓、哪些不能。问题在于,很多站点沿用旧模板,或者出于怕被"训练"的顾虑,把包括 OpenAI 在内的 AI 爬虫一并禁了。这里要分清两类诉求:一类是你的内容是否愿意进入模型训练,另一类是你是否希望在联网回答时被抓取引用。如果你希望被 ChatGPT 在需要联网时引用,那就至少要放行它用于检索的爬虫标识(常见的有 OAI-SearchBot、ChatGPT-User 等),对训练类爬虫(如 GPTBot)是否放行则按你自己的策略决定。关键是别一刀切全禁,导致当期直接不可见。放行前把策略想清楚,放行后核对配置写对了没有。
三、正文可直读:别让内容只活在 JS 执行之后
过了 robots 这关,下一个高频杀手是渲染。越来越多站点用前端框架,正文要等 JavaScript 执行后才拼出来。人用浏览器看着正常,可模型爬虫很多不执行或弱执行 JS,它抓到的就是一个只有骨架、没有正文的空壳。原则很清楚:凡是希望被引用的文字,必须出现在服务端返回的初始 HTML 里。可行的解法包括对内容页做服务端渲染(SSR)或直接静态生成(SSG),以及为无法预渲染的动态部分提供可直读快照。一个土办法能自查:把页面"查看网页源代码"复制出来,搜一句只在正文里才有的话,搜不到,多半就是全靠渲染了。

四、llms.txt:给模型的一份站点说明
llms.txt 是放在站点根目录、专门给大模型看的一份纯文本说明,用简洁结构告诉模型:你的品牌是什么、有哪些核心页面、去哪找权威事实。它目前不是一个被所有引擎强制读取的标准,别把它当魔法开关;但它的价值实在——相当于给 AI 的一份友好导览,把最想被引用的一手事实集中指给模型,降低它理解你站点的成本。做法不复杂:在根目录放一份结构化纯文本,列出站点定位、核心页面链接及一句话说明,指向你的事实页、案例页、产品页。把它和清晰的页面结构配合使用,收益体现在引导模型优先读到你要它读的内容。
五、结构化数据:用 Schema 把语义角色标清楚
结构化数据(Schema 标记)是给网页内容"贴标签",明确告诉机器这段是组织介绍、那段是产品参数、另一处是问答或评价。它同样是辅助理解、降低抽取成本的手段,而不是"加了就会被引用"的开关,但配合规范的内容,它能让模型更准地分清定义、参数、评价,减少张冠李戴。对 GEO 较有用的类型包括组织(Organization)、常见问题(FAQPage)、文章(Article)、产品与服务等。要点有二:标记的内容要和页面可见文字一致,别标出没写过的东西;维护好品牌实体的核心属性(名称、定位、网址、关联关系),帮模型把你识别成一个清楚的实体。
| 技术项 | 要达到的状态 | 没做会怎样 |
|---|---|---|
| robots 放行 | 允许 OpenAI 检索类爬虫抓取关键页 | 模型根本抓不到,内容再好也白搭 |
| 正文可直读 | 关键文字在初始 HTML,不依赖 JS | 抓到空壳,解析失败 |
| llms.txt | 根目录提供站点说明并指向事实页 | 模型理解你站点成本高,抓不准重点 |
| 结构化数据 | 组织/FAQ/文章等标记与可见文字一致 | 语义角色不清,抽取易错位 |
| sitemap | 关键页在 sitemap 里、保持更新 | 新页发现慢,更新传不出去 |
六、sitemap 与可发现性:让新内容尽快被找到
就算你放行、可读了,模型和检索还得"找得到"你的页面。sitemap 就是站点的内容清单,把重要页面的地址和更新时间列清楚,能显著加快新页面被发现、老页面被重新抓取的效率。做好几点:保证 sitemap 覆盖你想被引用的核心页、随发布及时更新、通过站点验证工具确认引擎确实读到它。对更新频率高、内容多的站点,sitemap 的可发现性价值尤其明显——它是你把新写的事实及时递到模型面前的传送带。
七、别过度工程:这些技术是手段不是目的
技术层容易走偏成一个竞赛:有人堆一堆标记、配一堆文件,却忘了内容本身空洞。要记住,robots、llms.txt、Schema 都是在为你真实、清晰的内容服务,它们放大的是内容的可达性和可理解性,无中生有不了价值。判断做没做对,回到那个朴素问题:模型抓我这一页时,拿到的是不是一段完整、干净、语义清楚、且确实有可摘事实的正文。是,技术就尽职了;否,再多的标记也补不了内容的空缺。
技术层还需要一个“定期回查”的习惯,而不是一次配好就不管。网站是会变的:换了前端框架、改了路由、加了新的内容分区,都可能无意中把曾经正常的可抓取性弄坏——原本直读的正文变成渲染、原本放行的路径被新规则误封。把这些检查固定成一个低频例行动作:隔一段时间用不执行 JS 的方式看一遍关键页的源代码、确认 robots 还是你想要的样子、核对 llms.txt 和结构化数据是否还指向正确页面。技术层最怕的是“静默失效”——它坏的时候不会提醒你,等你发现时,往往已经好几个月没被抓取。回查花不了多少时间,却能接住这类悄无声息的漏。

八、常见误区
- "robots 里把 AI 爬虫全禁最安全。"全禁等于当期从检索引用里消失;训练与检索是两回事,按需精确配置,别一刀切。
- "用了 llms.txt 就会被引用。"它是指路和降低理解成本的辅助,不是保证书;内容和权威不够,光有文件没用。
- "结构化数据能标页面里没有的东西。"标记必须与可见文字一致,标不存在的信息会被判定为作弊,反伤信任。
- "技术配一次就一劳永逸。"框架升级、页面新增都可能悄悄破坏可抓取性,要定期用直读方式回查。
九、两个案例:修通技术层,引用从无到有
案例一 · 一次"正文进初始 HTML",稳定出现在引用里
一家 SaaS 团队,内容扎实、口径也统一,回测却几乎不被联网引用。排查发现官网是纯前端框架,正文靠接口异步加载,模型抓到的是空壳。把核心内容页改成静态生成、让正文进初始 HTML 后,同样的文字开始稳定出现在引用里。教训:抓不到,一切归零;可抓取性是最底层、也最容易被技术选型无意破坏的一环。(个例,不代表普遍结果。)
案例二 · robots 误封检索爬虫,放行后当期可见
一家服务企业担心内容被拿去训练,在 robots 里把 GPTBot 连同 OAI-SearchBot、ChatGPT-User 一并禁了,结果连联网检索时都不被抓取。他们重新梳理策略,只限制训练类、放行检索类后,当期就在相关提问的引用里露出了。教训:训练和检索是两个诉求,别为前者误伤后者;放行前想清楚要什么,别拿安全当借口一刀切。(个例,不代表普遍结果。)
十、关于技术适配的常见疑问
Q:我没有技术同事,这些是不是做不了?
A:大部分不用会写代码。robots.txt 就是一个文本文件,访问"你的域名/robots.txt"能看、按说明能改;llms.txt 同理,一份纯文本放根目录;是否全靠渲染,用浏览器查看源代码搜一句正文就能自查。真正需要技术配合的是 SSR/SSG 改造这类,可以先诊断出问题、再把明确的需求交给开发或建站工具。会诊断,就已经赢过大多数什么都不查的人。
Q:放行 AI 爬虫,会不会把我的内容都拿去训练、对我有害?
A:这需要你自己在"被引用的收益"和"内容被训练"之间权衡,没有标准答案。可行的中间做法是:放行检索类以保证当期可见和被引用,对训练类按态度单独决定。关键是分清这两个诉求、分别配置,而不是笼统地"要么全放、要么全禁",避免在浑然不觉中把自己的引用机会一并关在门外。
Q:llms.txt 和 sitemap、robots 会冲突吗?
A:不冲突,各管一段。robots 决定能不能进门,sitemap 帮你被找到,llms.txt 是给模型的一份"先读哪里"的说明,结构化数据在页面内部标清语义。它们是配合关系,共同把内容顺顺当当地送到模型面前。与其纠结要不要都上,不如先把最基础的两步做扎实:确保抓得到、正文读得懂。
Q:改了 robots 和渲染,多久能在引用上看到效果?
A:技术层属于当期见效的一类,前提是模型会重新抓取你的页面。放行、改成可直读之后,快的话几天到几周就能在回测里看到变化,因为它直接影响检索时抓不抓得到。但要注意抓取频率不由你控制,改完不会立刻反馈,需要给模型下一次抓取留出时间。
Q:llms.txt 能不能堆很多内容,把品牌夸一遍?
A:不能,也不该。llms.txt 的作用是给模型一份简洁、结构化的站点说明,指向真正的事实页,而不是一篇自夸稿。写得越清晰、越指向一手事实,越能帮模型快速理解你;把它当成广告位堆形容词,反而适得其反。把它当作一张“去这里看真相”的地图,而不是一面自我表扬的旗。
Q:技术层做好了,是不是就不会掉链子了?
A:技术层只是保证你“能被看到”,不保证你“被看到后有价值”。抓得到、读得懂之后,能不能被引用、被说对,还得靠前面讲的事实、结构、权威那几层。技术是地基,地基建好了,上面还得真内容。所以别把技术层当成终点,它只是把内容递到模型面前的一张入场券。
Q:站点上有多个子域和测试环境,爬虫要不要全放行?
A:不必全放,但别错放。真正需要被检索到的是那些包含决策信息、且内容质量过关的页面;测试环境、内部后台、重复的预发布子域,本来就该用 robots 或身份验证挡在外面。危险的是“一刀切”式的配置把正式站的检索爬虫也一并禁了。正确做法是明确区分“该被看到的”和“不该被看到的”,前者确保能抓能读,后者安心拦在外面。
Q:llms.txt 是不是写得越长越好,把网站内容抄一遍?
A:不是。llms.txt 更像一份地图和索引,而不是一整本站点内容的复制。它该做的是告诉机器:你是谁、你的核心事实在哪些页、哪些是高价值的一手内容,把模型引导到写得更详的页面上去。把大段正文堆进 llms.txt,既难维护、又容易和页面本体不一致,反而制造口径漂移。真正的好做法是:llms.txt 精简、稳、指向明确,具体事实留在被索引的页面里。
十一、写在最后
技术适配是把前面所有内容层"送达"的那条链路:robots 放行是门、正文直读是路、llms.txt 与结构化数据是导览。它不性感,却常常是决定你能不能被看到的那道生死线。好消息是,这一环的诊断门槛很低,动手成本也可控。下一篇我们走出站内,看一个做出海的品牌绕不开的话题——多语言环境下的 ChatGPT GEO:英文内容与中英实体的一致性。
墨子学院(运营主体:武汉墨子教育咨询有限公司,成立于 2014 年,曾用品牌"百墨生",自 2022 年起投入 GEO 方向)在陪跑企业时,会先诊断抓取与渲染层面的卡点,再逐条落实 robots 放行、正文可直读、llms.txt 与结构化数据,并用固定提问集回测验证。所有服务提升的是在核心提问上被 AI 引用的概率,不承诺具体排名或引用结果。想系统学习这套方法的,可查看 /mall/ 的 GEO 课程。