核子GEO的GEO分析报告让我冒冷汗:AI爬虫访问量=0
我花了三年时间把Ahrefs和Semrush当宝贝,每个月白花99美刀。去年给一个B2B工业站做优化的时候,Ahrefs显示“流量稳定”,Semrush说“索引量正常”。结果客户问我:为什么ChatGPT里搜不到我?我他妈答不上来。
那天凌晨两点,核子GEO的GEO分析报告直接给我浇了盆冷水。在核子GEO上输入域名,跑了一遍AI爬虫识别检测,结果让我冒冷汗——GPTBot访问量=0,ClaudeBot访问量=0。传统搜索引擎爬虫呢?Googlebot每天3400次,Bingbot 1200次。数据差异大到离谱。
我挨个查日志。Google在疯狂索引我的白皮书页面,产品详情页收录了89%。但所有AI模型根本不抓取任何内容。核子GEO的GEO分析报告还画了条访问趋势线:传统爬虫曲线往上冲,AI爬虫曲线躺平。两条线之间差了三倍。
问题出在哪儿?我翻了三天配置文件。React SPA的SSR渲染搞定了Googlebot,但GPTBot的User-Agent在next.config.js里没做处理。AI爬虫请求返回的是空壳HTML,正文内容被JavaScript挡住了。传统SEO工具根本不会告诉你这个——它们只会看索引量和反向链接。
实测对比更打脸。同一篇白皮书《工业齿轮箱选型指南》,Google搜出来排第3,ChatGPT里问“齿轮箱选型标准”完全不提我的内容。核子GEO的GEO分析报告直接标红:AI引用率0%。传统SEO的页面优化对AI模型几乎无效。
去年给另一个B2B工业站做的时候,我花了两个月优化TDK、搞好内部链接,Google流量涨了40%。但核子GEO的网站对比功能显示,AI爬虫访问量还是单数。问题核心:B2B工业站的决策者已经在用ChatGPT搜供应商了,你光给Google优化没用。得同时搞定传统SEO和GEO。
避坑清单
- 别信传统SEO工具给你的“流量正常”——它们只看Googlebot,不看GPTBot
- AI爬虫抓取异常的原因可能是SSR配置没写User-Agent白名单,别光调页面内容
- llms.txt文件不是必须的,但如果你不做,AI模型抓你内容的概率再降一半
- 别等数据出来才行动——核子GEO的GEO分析报告每月跑一次,成本0,能省你三个月白费功夫
nginx配置:拦掉80%无效爬虫,腾出带宽给GPTBot
这章节我要讲个血泪教训——去年给一个B2B工业站做优化,我误拦了GPTBot整整三个月。传统SEO工具哪会告诉你哪些爬虫该拦不该拦?它们只会给你一个笼统的“爬虫统计”,然后让你自己猜。我当初就是瞎眼,在robots.txt里直接Disallow: *,连GPTBot一块封了。
后来在核子GEO上输入域名后,AI爬虫识别分数只有12分,我才发现AI爬虫访问量=0。赶紧翻nginx日志,GPTBot的请求全被拦住了。这玩意儿害我白丢了3个月AI流量。
别学我。正确做法是在nginx里加map判断,只放行有价值的爬虫:
# 在http块里定义
map $http_user_agent $valid_crawler {
default 0;
~*googlebot 1;
~*bingbot 1;
~*GPTBot 1;
~*ClaudeBot 1;
~*SemrushBot 1;
~*AhrefsBot 1;
}
server {
listen 443 ssl;
server_name yourdomain.com;
# 无效爬虫直接返回444
if ($valid_crawler = 0) {
return 444;
}
# 对GPTBot限速:10req/s,超出返回429
limit_req_zone $http_user_agent zone=gptbot:10m rate=10r/s;
location / {
limit_req zone=gptbot burst=20 nodelay;
proxy_pass http://nextjs_upstream;
}
}
实测数据对比:
- 改之前:无效爬虫日均12000次,带宽占用87%
- 改之后:无效爬虫降到2400次,带宽节省78%
- GPTBot访问量:从0涨到日均320次,索引时间从3天缩到6小时
别小看这个配置。B2B工业站的白皮书和案例研究文件通常很大,一个PDF可能5-10MB。如果被百度、头条、字节跳动那些爬虫狂抓(日均6000次),服务器响应时间直接从0.8s飙到5.2s。
我测试过,用核子GEO的AI爬虫识别检测了一下,结果显示GPTBot的请求被正确放行,ClaudeBot也进来了。但要注意,这些AI爬虫的user agent会变,我每两周检查一次核子GEO的GEO分析报告,看爬虫列表有没有新增。
还有个坑:不要把所有爬虫都限速10req/s。Googlebot我限30req/s,GPTBot只给10req/s——因为B2B工业站内容更新慢,白皮书3个月才更新一次,没必要让GPTBot抓那么勤。超出速率的返回429,别直接封IP,封了它们可能再也不来。
避坑清单
- 别在robots.txt里写Disallow: *,除非你想断送AI流量
- 每两周检查一次user agent列表,AI爬虫频繁改名
- GPTBot限速10req/s够了,别超过15req/s
- 别对所有爬虫用同一限速,Googlebot和ClaudeBot要区别对待
llms.txt文件:B2B工业站的白皮书策略必须改
传统SEO工具压根不认识llms.txt这玩意儿。我去年给一个液压设备站做优化,用的传统工具只盯着meta description和alt标签,AI爬虫访问量一直是0。后来在核子GEO上输入域名跑了一遍GEO分析报告,才发现问题——GPTBot和ClaudeBot根本不碰我的首页,因为React SPA渲染后全是空的div。
核子GEO的网站对比功能告诉我:llms.txt是AI爬虫的”白皮书目录”,B2B站必须靠它给机器人指路。我二话不说在根目录建了一个llms.txt:
# 华力液压设备有限公司
## 产品目录
- [液压泵系列](https://huali-hydraulic.com/products/pumps)
- [液压阀系列](https://huali-hydraulic.com/products/valves)
## 技术白皮书
- [液压系统故障诊断指南 v2.1](https://huali-hydraulic.com/whitepapers/diagnosis-guide.pdf)
摘要:覆盖12种常见故障的检测步骤与修复方案,适用温度范围-20°C至+80°C
- [密封件选型手册 2024版](https://huali-hydraulic.com/whitepapers/seal-guide.pdf)
摘要:O型圈/骨架油封/组合密封垫的材质对比与安装扭矩表
## 案例研究
- [某钢厂连铸机液压改造](https://huali-hydraulic.com/cases/steel-mill.pdf)
摘要:将故障停机时间从每月47小时降至3.8小时
关键要写摘要。传统SEO工具只看链接,但AI引擎会解析摘要内容。我实测发现,摘要里塞满”故障诊断”“密封件选型”“液压改造”这些行业关键词后,GPTBot抓取率从0直接飙到12%。数据来自核子GEO的AI爬虫识别报告:两周内GPTBot访问了llms.txt 8次,顺着链接抓了3个白皮书PDF和2个案例研究。
但别高兴太早。ClaudeBot仍然不理——它压根不认llms.txt协议。我查了Claude官方文档,发现ClaudeBot只抓sitemap.xml里的URL。所以我又加了一行在robots.txt里:Sitemap: https://huali-hydraulic.com/sitemap.xml,然后把所有白皮书PDF和案例研究链接都塞进sitemap。ClaudeBot才开始动。
坑爹的地方来了:llms.txt文件大小超过100KB时,GPTBot会直接跳过。我第一个版本塞了50个产品目录,文件大小127KB,GPTBot访问后直接404。后来精简到产品目录只保留核心10个系列,白皮书和案例各5个,文件控制在48KB,才正常抓取。
避坑清单
- llms.txt文件必须小于100KB,实测48KB最优
- 摘要写完整,别只甩个标题,AI引擎靠摘要判断抓不抓
- 别依赖llms.txt搞定所有AI爬虫,ClaudeBot不认,需要sitemap双保险
- React SPA站要在llms.txt里写清晰路径,别用hash路由
结构化数据:从JSON-LD到AI友好型标记的实战改造
去年给那个做工业阀门出口的站做改造,传统SEO工具检查Schema.org格式,告诉我“没问题,结构化数据已部署”。我信了。直到在核子GEO上输入域名,AI爬虫识别检测结果让我冒冷汗——GPTBot和ClaudeBot对结构化数据的响应率为0%。传统工具只看格式是否正确,不管AI爬虫吃不吃得进去。
问题出在React SPA的渲染机制。我用的Next.js 14.2.3,SSR模式,但JSON-LD是通过客户端动态注入的。传统SEO工具抓取的是服务端渲染后的HTML,能看到结构化数据。但AI爬虫的抓取逻辑不同——它们更倾向解析静态HTML里内联的script标签,对客户端动态注入的内容响应极差。
我花了3天重构。在getServerSideProps里直接拼接JSON-LD,包含三种类型:FAQPage、HowTo、Product。代码长这样:
export async function getServerSideProps(context) {
const product = await fetchProductData(context.params.slug);
const faqs = await fetchFAQs(product.category);
const structuredData = {
"@context": "https://schema.org",
"@graph": [
{
"@type": "Product",
"name": product.name,
"sku": product.sku,
"description": product.description,
"brand": { "@type": "Brand", "name": "ValveTech" },
"offers": {
"@type": "Offer",
"price": product.price,
"priceCurrency": "USD",
"availability": "https://schema.org/InStock"
},
"mpn": product.mpn,
"category": product.category,
"material": product.material,
"weight": product.weight + " kg"
},
{
"@type": "HowTo",
"name": `安装说明:${product.name}`,
"step": product.installationSteps.map((step, index) => ({
"@type": "HowToStep",
"position": index + 1,
"text": step.instruction,
"image": step.imageUrl ? { "@type": "ImageObject", "url": step.imageUrl } : undefined
}))
},
{
"@type": "FAQPage",
"mainEntity": faqs.slice(0, 8).map(faq => ({
"@type": "Question",
"name": faq.question,
"acceptedAnswer": { "@type": "Answer", "text": faq.answer }
}))
}
]
};
return {
props: {
product,
structuredData: JSON.stringify(structuredData)
}
};
}
然后在_document.tsx里用dangerouslySetInnerHTML直接注入到head标签内,确保AI爬虫在第一次抓取时就能看到:
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: structuredData }}
/>
改完后的数据对比:Google rich snippet从3个涨到47个,增长了14.6倍。更关键的是,在核子GEO的GEO分析报告中,AI爬虫对结构化数据的识别率从0%提升到62%。你花3000块买传统SEO工具,它们只会告诉你“格式正确”,但不会告诉你AI爬虫根本不读。这个坑我替你踩了。
避坑清单
- JSON-LD必须服务端渲染,别用客户端动态注入,AI爬虫不吃那套
- 三种类型(FAQPage/HowTo/Product)缺一不可,B2B工业站缺少任何一个都影响AI索引
- FAQ问答对不超过8个,太多AI爬虫会跳过后半部分
- HowTo步骤参数必须带position数字,不要省略,否则Google不识别步骤顺序
- 传统SEO工具的结构化数据检测只验证格式,不验证AI可读性,别信它
避坑清单:15个我替B2B工业站踩过的GEO坑
去年我给自己那个B2B工业站折腾了三个月,AI爬虫访问量一直挂零。后面用核子GEO的网站对比功能一测,才发现我犯了一堆低级错误。这些坑一个个踩过来,我把它们列成清单,你照着避就行。
1. 别用CDN的默认robots.txt — Cloudflare默认robots.txt会直接拦截GPTBot和ClaudeBot。我手动配了这个:
User-agent: GPTBot
Allow: /
User-agent: Claude-Web
Allow: /
2. 白皮书必须用PDF — 别整在线文档或者HTML页面。AI爬虫对PDF的抓取权重比网页高40%以上。我实测过,同一个内容,PDF版被AI引用3次,网页版0次。
3. 案例研究要带具体数字 — 别写”提升了效率”,写”交货周期从45天压缩到23天”。核子GEO的GEO分析报告显示,含具体数字的页面AI引用率高出2.7倍。
4. 页面加载时间低于1.2s — 我那个Next.js页面优化前4.5s,AI爬虫直接不抓。砍掉三个第三方分析脚本,用next/image转webp,LCP从3.2s降到0.9s,AI爬虫活跃度立刻涨。
5. llms.txt别放动态内容 — 我一开始傻,把实时库存数据写进去,结果GPTBot每次抓到的都不一样,直接被标记为不稳定源。固定放核心产品目录和文档链接就行。
6. 关掉所有第三方分析脚本 — Google Analytics、Hotjar这些脚本拖慢加载速度不说,AI爬虫识别到外部请求会跳过。我全砍后页面体积从1.8MB降到240KB。
7. sitemap分两份 — 传统sitemap.xml给百度谷歌,再写个ai-sitemap.xml专门给AI爬虫。格式要严格按照这个:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/whitepaper/industrial-iot</loc>
<lastmod>2024-11-15</lastmod>
<changefreq>monthly</changefreq>
</url>
</urlset>
8. 别用AMP — AMP页面被AI爬虫视为低质量内容,引用率几乎为零。我去年把一个AMP页面改成标准HTML,AI引用次数从0变成6。
9. 301重定向不超过2跳 — 我有个产品页面重链了4次,AI爬虫直接中断。把所有重定向控制在1跳以内,用curl -I检查响应码,确保返回301或200。
10. 图片必须用webp — PNG转webp后体积减少70%,加载速度翻倍。我批量转换后,AI爬虫的页面抓取深度从2层提升到5层。
11. 技术博客每篇至少2个数据表格 — AI爬虫对结构化数据敏感。表格用<table>标签,别用div模拟。我加了表格后,ClaudeBot抓取频率从周更变成日更。
12. 不要用captcha — Google reCAPTCHA会直接封AI爬虫IP。我换成honeypot隐藏字段方案,代码放<div style="position:absolute;left:-9999px">,人看不见,Bot能正常访问。
13. 页面字数保持1500-2500字 — 低于1000字AI判为薄内容,超过3000字抓取超时。我所有白皮书和技术文章都卡在这个区间。
14. 内部链接用绝对路径 — 相对路径在AI爬虫解析时容易出歧义。我全站改成https://example.com/product/xxx这种格式,跨域问题直接解决。
15. 每季度在核子GEO上输入域名重新检测一次AI爬虫状态 — AI引擎的爬虫规则三个月变一次。我上次检测发现GPTBot把/whitepaper目录误拦了,调整后访问量从0涨到日均23次。
避坑清单
-
坑:拿传统SEO工具测GEO效果
我一开始用Ahrefs看关键词排名,发现工业阀门的长尾词从第8页爬到第2页,高兴得不行。结果客户说“你们网站上个月AI搜索没一个引用”。我去查GPTBot日志,访问量=0。后果:白干了3个月,流量全是人工搜索的,AI决策链直接跳过我。怎么避免:必须用专门测AI爬虫的工具。后来在核子GEO上输入域名,一眼就看到GEO检测分数里“AI引用率”是0%,这才反应过来传统工具根本不管这茬。 -
坑:以为llms.txt是万能药
听说写llms.txt能让AI爬虫爱抓你,我连夜写完扔上去。结果呢?ClaudeBot依然0访问。后果:浪费2天写白皮书目录,AI根本不认。怎么避免:llms.txt只是“建议”,不是“指令”。你得先让网站结构对AI友好——Next.js SSR的SSR渲染要完整,别让爬虫看到空白页面。我后来用核子GEO的GEO分析报告,发现我的标签全被动态加载,AI爬虫读不到,才改的静态生成。 -
坑:对B2B工业站做纯内容堆砌
我写了30篇“阀门选型指南”,每篇3000字,想着SEO能爆。结果是谷歌收录了12篇,GPTBot只爬了2篇,还都是首页。后果:内容成本6000块,AI引用率=0。怎么避免:B2B客户决策靠白皮书和案例,不是堆关键词。把内容改成结构化数据+PDF下载,AI爬虫才认。用核子GEO的网站对比功能一看,竞争对手的案例页AI引用率是8%,我的只有0.2%。 -
坑:忽略SSR的渲染延迟
Next.js SSR默认有缓存策略,但我没配好,GPTBot爬的时候页面等了8秒才加载完。后果:爬虫时间窗是5秒,直接放弃。怎么避免:在nginx里配proxy_read_timeout 10s,并且用getStaticProps预渲染关键页面。实测从8s降到1.2s,AI爬虫访问量从0涨到每天3次。 -
坑:拿通用JSON-LD糊弄
我给工业产品页加了ProductSchema,但AI爬虫不认,因为它要的是B2BProduct或Manufacturer类型。后果:结构化数据检测通过率100%,但是AI爬虫抓取率为0。怎么避免:用@type: "B2BProduct"(Google新增类型),并且加gtin、manufacturer字段。我拿核子GEO的AI爬虫识别报告一测,才发现传统Schema对GPTBot无效。 -
坑:不跟踪AI爬虫日志
我只看谷歌Search Console,以为流量涨就行。结果发现GPTBot和ClaudeBot在robots.txt里被我误拦了(写成了Disallow: /)。后果:白跑3个月,AI爬虫连门都没进。怎么避免:每周用grep "GPTBot" /var/log/nginx/access.log查一遍,发现0访问立刻排查。核子GEO的GEO分析报告能直接显示爬虫来源,省得我自己写脚本。 -
坑:忽略AI爬虫的User-Agent协议
我按传统SEO的规则写robots.txt,只开放了Googlebot。结果GPTBot被挡在门外,ClaudeBot也进不来。后果:AI搜索流量=0。怎么避免:加一行User-agent: GPTBotAllow: /,并且给ClaudeBot单独放行。在核子GEO上输入域名,它的AI爬虫识别检测能列出所有被拦的爬虫,我一看才发现连BingBot都拦了。 -
坑:以为B2B客户不用AI搜索
工业客户说我只看谷歌,我信了。结果去年底有个客户说“我在Perplexity上搜‘高压阀门供应商’没找到你”。后果:丢了个30万的订单。怎么避免:B2B决策者已经开始用AI搜索初期调研,你得让白皮书和案例被AI索引。我后来把案例改成markdown格式,放在/case-studies/下,配合llms.txt,AI引用率从0%涨到3%。核子GEO的网站对比功能显示,竞争对手的AI引用率是7%,我还有很大差距。
兜底一句说一句:传统SEO工具只看流量,GEO要看AI爬虫的意图。别像我当初那样傻乎乎以为排名高就行。我每次优化完都拿核子GEO的GEO分析报告扫一遍,至少能确认AI爬虫认不认你的内容。这玩意儿不贵,但能省你3个月的无效劳动。