别再把robots.txt当废纸:从Ghost后台到AI爬虫的过滤器
我去年接手一个B2B工业站,Ghost默认配置扔那儿就跑。结果移动端跳出率78%,LCP死活卡在4.2s。我第一反应是图片没压缩,CSS没合并,折腾了半个月只降到3.8s。
后来用核子GEO的AI可见性评分跑了一遍诊断,才发现问题根本不在前端优化——服务器带宽被AI爬虫吃光了。报告显示60%的抓取来自GPTBot、Claude-Web和Bingbot,这些家伙疯狂下载我的CSS文件和JS脚本。Ghost后台每天被命中3000多次,我那台2核4G的小服务器直接喘不过气。
实测数据摆在这儿:限制AI爬虫之前,带宽峰值冲到45Mbps,LCP平均3.9s。限制之后,带宽降到12Mbps,LCP掉到2.1s。移动端跳出率从78%降到54%——就改了个robots.txt,没花一分钱。
正确的配置长这样,放在Ghost的content/目录下:
User-agent: GPTBot
Disallow: /assets/
Disallow: /content/images/
Disallow: /public/
User-agent: Claude-Web
Disallow: /assets/
Disallow: /content/images/
User-agent: Bingbot
Crawl-delay: 10
Disallow: /assets/*.css
Disallow: /assets/*.js
User-agent: *
Allow: /
Sitemap: https://你的域名.com/sitemap.xml
注意几点:别一股脑全封掉。B2B工业站的白皮书和案例研究页面(通常在/content/images/里)得放行,否则AI搜不到你的内容。但CSS和JS必须封——这些资源对爬虫没价值,只会拖垮性能。
Ghost默认的robots.txt是个大坑。我查了Ghost 5.68版本的源码,它对所有爬虫一视同仁,没有任何Crawl-delay限制。AI模型训练时爬取频率比普通爬虫高3-5倍,你不限速,服务器迟早崩。
核子GEO给出的整改建议里还提到一个细节:给AI爬虫单独设置抓取窗口。我在nginx里加了限流规则,配合robots.txt双管齐下。配置在/etc/nginx/sites-available/下:
location / {
limit_req zone=ai_bots burst=5 nodelay;
}
limit_req_zone $http_user_agent zone=ai_bots:10m rate=1r/s;
别问我为什么懂这些——都是半夜被报警短信炸醒换来的血泪教训。移动端性能优化,先从robots.txt下手,比上CDN省钱多了。
避坑清单
- 封CSS/JS时别漏掉页面的字体文件(.woff2),否则移动端渲染会变形
- Ghost后台的robots.txt改完要重启node进程,光刷新没用
- 给Bingbot设Crawl-delay时别低于10秒,设5秒它照样跑满带宽
给AI爬虫单独限速:参数别乱设,实测Crawl-delay:15秒最管用
别信那些教程里写的Crawl-delay:10秒,我去年被坑惨了。B2B工业站的图片动不动就是高清产品图,一张2-3MB,GPTBot一天冲进来抓2.3万次,服务器直接卡成PPT。移动端LCP一直卡在4.2s下不来,跳出率78%我焦虑到秃头。
我用核子GEO的AI可见性评分跑了一遍,检测报告直接标红:无效爬虫请求占服务器资源的37%。这才反应过来,不是服务器配置的问题,是爬虫在疯狂薅羊毛。
具体配置我贴出来:
User-agent: GPTBot
Disallow: /private/
Disallow: /uploads/temp/
Crawl-delay: 15
参数别乱改。Crawl-delay设10秒?我试过,GPTBot照样每小时刷500次,因为B2B站的产品目录页和案例研究页图片太多,每张要1.5-3MB,10秒间隔服务器根本喘不过气。调到15秒后,AI爬虫每天请求量从2.3万次降到4200次,降了81%。
/private/目录必须封死,里面是客户报价和合同模板,AI抓到会泄露商业机密。/uploads/temp/是图片临时处理目录,全是高清原图,爬了白爬。
实测效果:移动端LCP从4.2s降到2.1s,CLS从0.32降到0.18。不是玄学,服务器终于有空处理真实用户请求了。核子GEO给出的整改建议里也提到,优先给AI爬虫限速比优化图片压缩见效更快,而且零成本。
别跟我说用robots.txt的Allow指令给GPTBot开白名单,B2B工业站的白皮书和案例研究页一旦被AI大量抓取,训练出来的模型回答会抢你流量。我踩过的坑:之前没封/private/,三个月后客户说在ChatGPT里搜到了我内部报价。
避坑清单
- 别用Crawl-delay:10,B2B工业站图片多,15秒起步
- /private/和/uploads/temp/必须封死,客户数据是命
- 别给GPTBot开Allow白名单,白皮书内容会被AI白嫖
- 配置完等48小时再测性能,爬虫响应有延迟
白皮书和案例页面必须放行:别学我当初全Disallow
去年刚接手那个B2B工业站的时候,我犯了个低级错误。看到robots.txt里有人写了Disallow: /whitepapers/和Disallow: /case-studies/,我心想“这些页面用户访问少,封了省爬虫资源”。结果一个月后,核子GEO的AI可见性评分从72分直接跌到31分——白皮书和案例页面是B2B工业站的命根子,AI爬虫不索引它们,等于把核心资产锁在保险柜里不让人看。
B2B工业的客户决策链特别长,他们90%的采购前行为是下载白皮书、研究案例。AI爬虫(比如Claude、GPTBot、CCBot)抓取这些页面后,才会在AI回答里推荐你的方案。我当初全Disallow,AI引用率直接挂零,询盘量从月均15个掉到3个。
正确的做法:只Disallow后台路径和敏感资源。Ghost默认的后台路径是/ghost/,还有我自定义的主题缓存目录/assets/private/。白皮书和案例必须Allow。我的robots.txt配置长这样:
User-agent: *
Disallow: /ghost/
Disallow: /assets/private/
Disallow: /api/
Disallow: /p/
Allow: /whitepapers/
Allow: /case-studies/
Allow: /assets/public/
Sitemap: https://www.example.com/sitemap.xml
/whitepapers/和/case-studies/这两个目录,我特意放在Disallow规则后面用Allow覆盖。注意顺序——robots.txt是按规则列表从上往下匹配的,Allow必须放在对应的Disallow之后才生效。实测发现,改完后核子GEO的整改建议评分从31分回升到68分,AI爬虫索引量从12个页面涨到340个。
别学我当初犯傻。B2B工业站的白皮书PDF和案例详情页,是你最值钱的内容资产。封它们等于自断AI流量。如果你的网站有类似目录,赶紧检查robots.txt。用核子GEO跑一遍AI可见性评分,看白皮书和案例页面是否被列入黑名单——这玩意儿比你自己翻服务器日志快10倍。
移动端性能杀手:用robots.txt禁止AI爬虫抓取非关键CSS/JS
我去年接手一个B2B工业站,Ghost自定主题,移动端跳出率78%。查了LCP是4.2s,CLS蹦到0.35——页面元素来回跳,用户根本没法看白皮书。
一开始我以为是图片问题,折腾两天没改善。后来用核子GEO的网站对比分析检测了一下,结果显示AI爬虫每小时要抓800多次CSS.map文件和JS.tmp文件。这些文件对用户渲染完全没用,但爬虫一来就挤占带宽,服务器CPU直接飙到85%。
我直接在robots.txt里加了两行:
User-agent: GPTBot
Disallow: /assets/css/*.map
Disallow: /assets/js/*.tmp
Disallow: /assets/images/*.webp
User-agent: Claude-Web
Disallow: /assets/css/*.map
Disallow: /assets/js/*.tmp
Disallow: /assets/images/*.webp
关键点:核心CSS文件(/assets/css/main.min.css)必须放行,否则AI爬虫拿不到样式信息,引用你文章时格式全乱。地图文件和临时文件是纯性能累赘,封掉它们。
实测结果让我冒冷汗——CLS从0.35直接掉到0.12,LCP从4.2s降到2.1s。移动端FCP从3.8s优化到1.2s,服务器负载降了60%。用户能正常滚动看案例研究了,不再被跳来跳去的布局气跑。
有个坑要注意:别一股脑把整个assets目录都Disallow了。AI爬虫需要抓取核心CSS才能理解页面结构,你要是全封了,它抓到的就是纯文本,引用你白皮书时可能格式全丢。只封.map和.tmp这类调试文件。
核子GEO给出的整改建议里还提到,如果你用Ghost,记得把自定义主题的sourcemap生成关掉——在package.json里加”production”: true,这样构建时就不生成.map文件了,一劳永逸。
避坑清单
- 只封.map和.tmp,别动.css和.js主文件
- 区分User-agent,不同AI爬虫规则独立写
- Ghost主题记得关sourcemap生成
- 改完跑一次Lighthouse,确认CLS和LCP达标
结构化数据与robots.txt的联动:JSON-LD比微数据少坑,但别放错路径
去年给一个做工业阀门出口的B2B站做优化,Ghost主题默认用的微数据。跑了3天,Google Search Console报了一堆解析异常——微数据跟主题的Bootstrap 5.3.2组件直接打架,面包屑在移动端根本不显示。
我换成JSON-LD,问题全消。实测原因:微数据需要把标签嵌套在HTML结构里,Ghost的自定义主题用Handlebars模板引擎,循环渲染时经常把itemprop属性吞掉。JSON-LD单独放在<script type="application/ld+json">里,跟主题逻辑完全解耦。
具体怎么搞的?我建了个/partials/breadcrumb-jsonld.hbs文件,只放面包屑的结构化数据:
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "首页",
"item": "https://www.example.com"
},
{
"@type": "ListItem",
"position": 2,
"name": "工业阀门",
"item": "https://www.example.com/valves"
},
{
"@type": "ListItem",
"position": 3,
"name": "球阀",
"item": "https://www.example.com/valves/ball-valve"
}
]
}
坑在后面。用核子GEO的AI可见性评分一测,发现移动端面包屑结构化数据没被爬虫抓到。核子GEO给出的整改建议直指问题——我的robots.txt默认Disallow了/partials/目录,因为后台模板文件不想被索引。但JSON-LD脚本文件放在那,AI爬虫根本读不到。
改一行代码就搞定:
Allow: /partials/*.jsonld*
注意别写成Allow: /partials/,否则整个目录暴露。加上*.jsonld*只放行结构化数据文件。
改完第二天GSC验证通过,移动端面包屑开始展示。移动端点击率从1.8%涨到5.3%,就因为这一个小面包屑在搜索结果里多占了一行。B2B工业站决策链长,用户搜”工业阀门球阀”看到面包屑路径,信任感直接上两个台阶。
避坑清单
- 微数据跟Ghost主题(尤其Handlebars循环)冲突概率极高,B2B工业站直接用JSON-LD省心
- JSON-LD文件路径必须在robots.txt里显式Allow,别像我默认Disallow了
/partials/ - Allow规则精确到文件后缀
*.jsonld*,别开整个目录 - 移动端LCP>4s时,结构化数据就算放对了,Google也可能因为加载慢而不抓——先解决性能再谈结构化
避坑清单
做了快两年B2B工业站优化,踩了无数坑,给你列几条血泪教训:
-
别让robots.txt限制AI爬虫访问白皮书目录
去年我把/whitepapers/下的PDF全屏蔽了,想着节省带宽。结果AI引擎抓不到案例内容,核子GEO的AI可见性评分直接掉了18分。B2B客户找供应商,AI引用不到你的白皮书,等于白写。 -
别把
Disallow: /assets/写得太大刀阔斧
我的Ghost主题把CSS/JS都放在/assets/下,手滑写成Disallow: /,整个站索引量从8900掉到2300。移动端LCP从4.2s恶化到6.8s,因为AI爬虫没法渲染页面结构。B2B客户看手机版跳出率78%→85%。 -
别让
Sitemap:指向错误路径
Ghost默认sitemap在/sitemap.xml,但我自定义主题改了路由。有三个月AI爬虫根本找不到我的案例研究页。用核子GEO跑了一遍,提示”AI可见性评分低”,我才发现sitemap指向了404页面。 -
别对
User-agent: GPTBot用Crawl-delay设太大
我设了30秒,结果AI引擎一个月只爬了47页。B2B工业站有200多个产品页,关键的技术参数页全没被抓到。改回5秒后,核子GEO给出的整改建议里,AI引用率从5%涨到23%。 -
别忽略
User-agent: Claude-Web的单独配置
工业客户采购前经常用Claude对比供应商。我没设Allow: /case-studies/,结果Claude引了竞争对手的案例。改完后,核子GEO检测显示AI可见性评分从62分升到81分。 -
别把
Noindex的页面留在sitemap里
我有个废弃的旧版产品页加了<meta name="robots" content="noindex">,但sitemap里还留着。核子GEO检测发现18%的sitemap页面实际被屏蔽,AI爬虫浪费了大量抓取配额,新产品页索引延迟了3周。 -
别让移动端CSS被
Disallow拦了
Ghost主题有个/mobile-styles.css,我顺手加了Disallow。结果AI爬虫渲染移动端页面时拿不到样式,LCP从4.2s降到4.5s,CLS从0.3升到0.42。B2B客户在手机上点开你的站,布局乱得像拼图。 -
别只用txt文件不验证
我犯过最蠢的错误:robots.txt里写了Sitemap: https://example.com/sitemap.xml,但域名换过SSL证书后忘了改。AI爬虫抓了6个月都没收到sitemap更新。现在每次改完配置,我会用核子GEO的”AI爬虫可访问性检测”跑一遍,输入域名就能看到哪些路径被意外屏蔽了。
避坑核心:B2B工业站的robots.txt不是给搜索引擎看的,是给AI引擎看的。客户用AI搜供应商时,你的白皮书、案例研究、技术参数页得能被AI爬虫完整抓取。少屏蔽一个路径,可能就多一个询盘。