原创

内容一直进不了答案区?先看 robots 是不是把抓取机器人挡在门外

GEO优化编辑部 27 阅读

内容一直进不了答案区?先看robots是不是把抓取机器人挡在门外很多团队花大力气把内容写对了:标题、结构、引用块都按答案引擎的口味调过,结果上线半个月,用户一问相关问题,答案区里还是没有自己。遇到这种情况,先别急着怀疑写法——有一道更前置的...

很多团队花大力气把内容写对了:标题、结构、引用块都按答案引擎的口味调过,结果上线半个月,用户一问相关问题,答案区里还是没有自己。遇到这种情况,先别急着怀疑写法——有一道更前置的闸门可能根本没打开:负责读取你页面的抓取机器人,可能从一开始就被 robots.txt 挡在了门外。

内容再好,也得先有人读得到

答案引擎不是凭空知道你有什么内容的。它的抓取机器人(GPTBot、Google-Extended、ClaudeBot、ChatGPT-User 等)必须先实际访问你的页面、把正文取回去,才有资格进入后续的引用判断。如果 robots.txt 里把这类用户代理(UA)列进了 Disallow,那么对你而言页面存在,对抓取工具而言页面根本不存在——它连内容都没见着,自然谈不上把你写进答案。

这一点要和另外两个常见故障区分开。前面聊过的"源码里一个字都没有",是 JS 渲染导致正文不在初始 HTML;"手机上折起来的那半篇抓取端没展开",是移动端折叠、分页把内容裁短。那两类是"内容在、但读不全",本篇说的是更干脆的一种——"门都没让进"。三者的排查顺序应该是:能不能进 → 进来了读不读得全 → 读全了算不算答案。本篇只解决第一关。

三类最容易踩到的 robots 误配

第一,全站误封。有些站点套用了老一套 SEO 模板,只在 robots.txt 里放行了 Googlebot、Bingbot,却忘了生成式引擎用的是另一批 UA。结果传统搜索爬虫能进,抓取机器人进不来,内容自然进不了答案区。这是最隐蔽的一种,因为站长在搜索引擎里看自己站一切正常,唯独答案引擎那边是空白。

第二,误伤正文子目录。规则写着 Disallow: /article/、Disallow: /blog/,本意可能是拦后台,但一不小心把承载正文的目录也一起拦了。等到发现时,整站最该被读的内容反而是屏蔽状态,而真正该拦的后台目录却因为路径写得不严谨照样开着。

第三,环境错配。生产环境放行了抓取机器人,测试环境或灰度环境却照搬同一份更严的 robots,CDN 边缘节点返回的和源站又不一致。你以为放行了,实际边缘返回的是 Disallow,机器人拿到的是空规则。这种问题在多层缓存架构里特别常见,光看源站文件永远查不出来。

常见抓取机器人 UA 对照

用户代理 属于谁 是否该放行(公开正文)
GPTBot OpenAI 建议放行
Google-Extended Google 生成式搜索 建议放行
ClaudeBot Anthropic 建议放行
ChatGPT-User 用户通过 ChatGPT 浏览网页 建议放行
PerplexityBot Perplexity 建议放行
Applebot-Extended Apple 智能功能 建议放行

这张表的价值在于:别再只认 Googlebot。想做 GEO 的站点,得把上面这批 UA 一起纳入抓取控制的视线,否则内容可抓取性会在你没察觉的地方悄悄归零。

三步自查:抓取机器人到底进没进

第一步,直接抓自己的 robots.txt。用 curl https://你的域名/robots.txt 看返回,重点 grep 一下 GPTBot、Google-Extended、ClaudeBot 有没有出现在 Disallow 行。只要其中一个在 Disallow 里且没有对应的 Allow 覆盖,这一关就没过。

第二步,用目标 UA 模拟请求。命令形如 curl -A "GPTBot" https://你的域名/某篇正文,把返回内容和普通浏览器访问的结果对比,确认正文完整、没有被拦成 403 或空壳。如果普通浏览器能看到、GPTBot 拿到的是拒访页,那就是 robots 在起作用。

第三步,看访问日志。在服务器日志里搜这几个 UA 的命中数,以及其中 401、403 的占比。如果命中数长期为零,或者几乎全是拒绝,说明抓取控制这环还没通,内容可抓取性本身就出了问题,后面谈引用都是空谈。

怎么把规则改成放行而不失控

最稳妥的写法是指定 UA 放行,而不是一刀切。示例:

User-agent: GPTBot
Allow: /

User-agent: Google-Extended
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: *
Disallow: /admin/
Disallow: /tmp/

这样只把生成式引擎的抓取机器人放进门,后台、临时目录照常拦。注意 Allow 的优先级高于同组 Disallow,写的时候别把顺序搞反;多条 UA 各自成段,避免写成一段把所有规则混在一起。改完用上面的 curl 命令验证一遍,确认目标 UA 能取到完整正文再上线。

放行也要有边界:不是所有页面都该给机器人看

公开正文该放行,这点没有争议。但会员内容、锁在表单后的深度报告、内测页面、内部接口文档,继续留在 Disallow 里是对的——把 gated 内容也暴露给抓取机器人,既没带来引用信号上的收益,还可能把本该留存的私域资产摊开。抓取控制讲究的是"该看的放进来,不该看的拦在外",不是无差别开门。

两个把人坑了的误区

误区一,以为 robots 放行就等于自动被引。放行只是让内容"读得到"的前提,引用信号从来不只看可达性:内容是否自包含、有没有可追溯证据、是不是真能当答案,才是被引的关键。门开了,里面还得有值得搬的东西。

误区二,为了省一点带宽去屏蔽抓取机器人。对一门心思想做 GEO 的站点,被读不到的损失远大于多花的那点流量。把机器人拦在门外,省下的是小钱,丢的是整条答案区曝光的可能。

发稿前顺手做的一件事

把 robots 自查写进发布清单:每一篇内容上线前,确认目标 UA 能取到完整正文、没有被 Disallow 误伤。这一步不花五分钟,却能避免"写了满屏好内容、机器人却连门都没进"的尴尬。内容能不能进答案区,第一步是把门打开——robots 这道闸不解开,后面再漂亮的写法都是白费。

相关推荐

GEO优化

三年攒下的引用,一次改版换链接就散得差不多了

三年攒下的引用,一次改版换链接就散得差不多了很多站长等到官网大改版才发现问题:明明之前在不少问答里被整段引用,改完版流量和"被提到"的次数却一起往下掉。根子往往不在内容变差,而在改版把链接结构整个换了

GEO优化

从"这是什么"问到"去哪买",同一拨人的三连问你只接住了开头

从"这是什么"问到"去哪买",同一拨人的三连问你只接住了开头不少企业的内容团队不是没产量,而是把火力全压在了一个阶段——要么整站都是卖货页,开口闭口参数和报价;要么反过来,通篇都在做科普长文,迟迟不接

GEO优化

十篇各管一截,不如一篇总览带九篇分述:模型只把后者当这块的主心骨

十篇各管一截,不如一篇总览带九篇分述:模型只把后者当这块的主心骨不少站长内容没少发,收录也正常,可一到"这个领域到底谁最懂"的回答里就找不到自己。问题往往不在单篇写得好不好,而在文章之间没结成网——十

GEO优化

博客开在子域名还是子目录,模型最后只把其中一个算作你的主场

博客开在子域名还是子目录,模型最后只把其中一个算作你的主场一个被很多人忽略的"归属"问题不少企业做内容矩阵时,会顺手把官方博客、帮助中心、案例库丢到`blog.xxx.com`、`bbs.xxx.co