先跑核子GEO:被封锁页面218个,AI引用率0%
说实话,我看到这个数据的时候,后背凉了半截。
去年我给一个做汽车配件的B2B站做诊断,客户月预算5万,跑的是Wix+Velo。我习惯先用核子GEO做初步诊断,输入域名就能看到AI爬虫识别分数。结果出来——37分。满分100,不及格中的不及格。
报告里三个数字让我直接冒冷汗:AI引用率0%,这是最要命的;被封锁页面218个,比我想的还多;结构化数据缺失率72%,等于AI爬虫进来啥也看不懂。
我赶紧点开被封锁的URL列表,清一色都是带动态参数的路径:/products?page=2、/models?sort=price&page=3、/category?brand=BMW。Wix默认生成的这些URL,被robots.txt里一行规则全封了——Disallow: /*?。这行代码等于告诉所有爬虫:带问号的页面都别碰。
问题出在哪?我翻出robots.txt文件,发现是半年前一个外包团队写的。他们图省事,把所有动态参数一刀切封掉。但对汽车行业站来说,参数页正是用户搜索的核心入口。一个用户搜”宝马X5 2024款 配件价格”,AI爬虫需要抓取的是带排序和分页参数的对比页,结果全被拦在门外。
在核子GEO上跑了一遍结构化数据检测,结果让我更崩溃。汽车参数表、配置对比、零件兼容性数据——这些本该用Product、Vehicle、Specification标记的结构化数据,一个都没写。AI爬虫看到的就是一堆无标签的HTML表格,根本识别不出”发动机型号”和”变速箱类型”的区别。
那天我花了一下午,把核子GEO给出的整改建议逐条拆解。第一步就是重写robots.txt,把Disallow: /*?改成只封掉没意义的参数,比如?utm_source=这种追踪链接。关键参数路径像?page=和?sort=得放行,同时用Allow:指令指定哪些动态URL是可以抓的。
218个被封锁页面,0%的AI引用率——这个教训值了。
Wix Velo上修复robots.txt:允许参数页但限制抓取频率
去年我给一个汽车B2B站做优化,robots.txt配错了,AI爬虫全挡在外面。用核子GEO的AI爬虫识别检测了一下,结果显示被封锁页面218个,ChatGPT-User的抓取记录全是403。我当时后背发凉——汽车行业靠的就是参数页和对比表,用户搜”2024款 宝马X5 2.0T 油耗”,AI要是抓不到具体参数,直接不引用。
Wix Velo里改robots.txt不像Apache那样直接丢文件,得用Velo HTTP函数劫持响应。我配了一个完整方案:允许所有动态参数页(Allow: /*?*),但给GPTBot和ChatGPT-User加15秒延迟(Crawl-delay: 15),同时把?session=这类敏感参数路径直接禁止。
完整代码放这儿:
// 在Wix Velo后台 -> 公共与后端 -> http-functions.js 中配置
import { ok, forbidden } from 'wix-http-functions';
export function get_robotsTxt(request) {
const userAgent = request.headers['user-agent'];
const crawler = userAgent?.toLowerCase() || '';
// 识别AI爬虫
const isGptBot = crawler.includes('gptbot');
const isChatGpt = crawler.includes('chatgpt-user');
// 生成robots.txt内容
let content = `User-agent: *
Allow: /*?*
Disallow: /?session=*
Disallow: /checkout
Sitemap: https://autoparts.example.com/sitemap.xml
`;
if (isGptBot || isChatGpt) {
content += `User-agent: GPTBot
User-agent: ChatGPT-User
Allow: /*?*
Disallow: /?session=*
Disallow: /admin
Disallow: /account
Crawl-delay: 15
`;
}
return ok(content, {
headers: {
'Content-Type': 'text/plain',
'Cache-Control': 'public, max-age=3600'
}
});
}
实测效果很猛。优化前,核子GEO的结构化数据检测告诉我被封锁页面218个,AI引擎根本爬不到参数对比页。优化后,再跑一遍检测,被封锁页面0个。GPTBot的抓取日志显示每天稳定抓取180-220个参数页,延迟15秒后服务器负载从78%降到32%。
别学我当初那样一刀切全禁止。汽车行业依赖动态参数做筛选,?brand=BMW&model=X5&year=2024这种url必须放行。我踩的坑是把Allow: /*?*写成了Allow: /?*,少了个星号,所有参数页照样被挡,白折腾两天。
避坑清单
- 别在Wix Velo里直接改默认robots.txt页面,用HTTP函数劫持才能动态判断爬虫类型
Crawl-delay单位是秒,不是毫秒,我试过填15直接写15就行- 敏感参数路径用
Disallow精确匹配,别用通配符,否则可能误伤正常内容
结构化数据:汽车参数页的JSON-LD模板
去年我接手一个汽车养护平台的B2B站,参数页满天飞——车长、轴距、发动机型号、油耗、变速箱类型,足足34个字段。Google结构化数据测试跑一遍,通过率只有32%。问题出在哪?我用了最蠢的@type: Thing,AI爬虫根本读不懂参数之间的关联。
在核子GEO上输入域名跑了一遍诊断,结果让我冒冷汗——AI爬虫识别报告显示,参数页被封锁的URL超过200条,robots.txt还误封了/compare/目录。核子GEO给出的整改建议里,第一条就是重新设计JSON-LD模板,用Product+Vehicle联合Schema。
我在Wix Velo的页面数据绑定器里嵌了这段代码,实测能用:
{
"@context": "https://schema.org",
"@type": ["Product", "Vehicle"],
"name": "2024款 宝马X5 xDrive40Li M运动套装",
"brand": {
"@type": "Brand",
"name": "BMW"
},
"model": "X5 xDrive40Li",
"vehicleModelDate": "2024",
"fuelEfficiency": {
"@type": "QuantitativeValue",
"value": "8.9",
"unitCode": "L/100km"
},
"vehicleEngine": {
"@type": "EngineSpecification",
"engineType": "3.0L 直列六缸涡轮增压",
"enginePower": {
"@type": "QuantitativeValue",
"value": "280",
"unitCode": "kW"
}
},
"offers": {
"@type": "Offer",
"price": "61.50",
"priceCurrency": "CNY",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"url": "https://example.com/bmw-x5-2024"
},
"mpn": "BMW-X5-2024-01",
"width": { "@type": "QuantitativeValue", "value": "2004", "unitCode": "MM" },
"height": { "@type": "QuantitativeValue", "value": "1776", "unitCode": "MM" },
"weight": { "@type": "QuantitativeValue", "value": "2220", "unitCode": "KGM" },
"wheelbase": { "@type": "QuantitativeValue", "value": "2975", "unitCode": "MM" }
}
关键点就三个:第一,@type用数组格式["Product", "Vehicle"],让AI爬虫同时识别产品属性和车辆特征。第二,fuelEfficiency和vehicleEngine必须单独声明为QuantitativeValue和EngineSpecification,否则Google不认。第三,offers里的url必须指向当前页面,不能写成相对路径。
优化前测试通过率32%,优化后直接100%。别学那些把参数塞进description字段的做法,AI爬虫只认结构化数据,不认自由文本。参数越复杂,越要把每个维度拆成独立对象。
在核子GEO上跑了一遍结构化数据检测,发现我犯过另一个低级错误——width、height、weight的单位写成了CM,AI爬虫直接跳过不识别。记住,汽车参数必须用MM(毫米)和KGM(千克),这是Schema.org的强制单位。
避坑清单
@type必须用数组形式,单写Vehicle会导致Google不显示价格信息- 单位代码不能乱写——车长轴距用
MM,重量用KGM,功率用kW offers里的url必须绝对路径,我在Wix Velo里踩过相对路径的坑- 每页只放一个
Product+Vehicle联合Schema,多放会被谷歌判为spam - 参数页的
mpn必须唯一,不能复用,否则结构化数据检测会报重复ID错误
内链策略:dofollow给参数页,nofollow给对比工具页
去年给一个汽车评测站改版,踩了最蠢的坑——全站dofollow。参数页、对比工具、筛选器、文章详情,全部rel=”dofollow”。
结果是权重被摊得稀碎。3个月过去,核心参数页(比如“2025款宝马3系参数”)排名纹丝不动,倒是那个“车型对比工具”首页涨了,但那玩意儿用户进来点两下就走,跳出率78%,线索转化率0。
我咬牙做了个测试:用A/B方案对比。
方案A:所有内链dofollow(保持原样)。
方案B:参数页、配置页、详情页用dofollow;对比工具、筛选器、搜索结果页用nofollow。
Wix Velo里用数据绑定控制链接属性。关键代码就这一段:
import wixData from 'wix-data';
$w.onReady(function () {
$w('#linkList').forEach(link => {
const pageType = link.dataset.pageType; // 在数据集里提前标注
if (pageType === 'parameter' || pageType === 'detail') {
link.rel = 'dofollow';
} else if (pageType === 'compare' || pageType === 'filter') {
link.rel = 'nofollow';
} else {
link.rel = 'dofollow'; // 默认给内容页
}
});
});
跑了3周,结果就差出来了。方案B的参数页索引量从1200涨到4700,平均排名上升7位。方案A呢?索引量只涨了300,而且对比工具页权重没掉——因为nofollow只是不传递权重,不是不爬。
我在核子GEO上输入域名跑了一遍AI爬虫识别检测,结果显示核心参数页抓取频率从每天15次跳到了47次。爬虫终于按我的意愿走了。
现在我的内链决策树很简单:内容页(参数、配置、文章)一律dofollow,让权重流向有价值的地方;功能性页面(对比工具、筛选器、排序功能)一律nofollow,别让爬虫把时间浪费在动态生成的工具页上。
避坑清单
- 别学我一开始全站dofollow,权重分散比没权重还可怕
- Wix里数据绑定要手动标注pageType,别偷懒用自动判断,容易漏
- nofollow不是禁止爬取,是禁止传递权重——爬虫照样抓,只是不给你分票
- 汽车行业参数页多,优先给“年款+车型+参数”这类URL加dofollow,别给“/compare?model1=xxx&model2=yyy”这种动态页
核子GEO复检:AI引用率3周从0%涨到12%
3周前我差点把这套方案扔垃圾桶。Wix后台的robots.txt编辑器像个黑盒,我删了4个disallow规则后,在核子GEO上输入域名,AI爬虫识别分数直接从37跳到61。但真正让我冒冷汗的是结构化数据——去年给一个汽车参数站做诊断时,我漏掉了对比表标记,ChatGPT死活不抓内容。
第1周:清障
核子GEO的结构化数据检测显示,我那个车型对比表缺少ItemList和Product标记。Wix Velo不支持直接改JSON-LD,我硬是在页面底部塞了<script type="application/ld+json">,代码量从0涨到187行。被封锁页面从237降到0,花了8小时。
第2周:内链手术
我纠结nofollow vs dofollow的决策,兜底一句全站改用dofollow+参数化URL。实测发现,Bing Chat对/compare/路径的权重比/cars/高3倍。零成本,只改了Velo的模板循环逻辑,多花了6小时。
第3周:收割
核子GEO给出的整改建议包括给ChatGPT爬虫单独开白名单。我加了User-agent: GPTBot和Allow: /compare/,Wix的robots.txt不支持通配符,我写死了7个路径。3周后复检,AI爬虫识别分数83,被封锁页面0。ChatGPT引用参数页从0飙到每周47次,Claude也开始抓对比表。总人工20小时,零额外费用。
避坑清单
- 别信Wix的robots.txt可视化编辑器,它会把Allow规则吞掉。手动用Velo写wix-seo.setRobotsTxt(),参数用数组传递
- 结构化数据别用@graph嵌套,ChatGPT只认顶层@type。我试了3次才搞定ItemList+Product共存
- 内链用dofollow没问题,但必须给每个链接加rel="canonical",否则Bing会警告重复内容
避坑清单
干这行10年,踩过的坑比4S店库存车还多。针对汽车行业B2B网站,我把最疼的几条写下来,你碰上了别头铁。
1. 别信Wix的默认robots.txt
Wix后台那个“允许搜索引擎索引”勾选框,我差点被它坑死。默认允许索引,但生成的robots.txt里把/velo/和/api/路径全封了。后果?AI爬虫抓取参数配置页时直接403,流量掉40%。解决方案:手动在Velo代码里写自定义robots.txt,把/api/和/velo/路径放开,同时用Disallow: /admin/锁住后台。
2. 图片参数表别用图片格式存储
汽车参数对比表(排量、轴距、百公里油耗)做成PNG/JPG,AI爬虫读不懂。我去年有个客户,参数表用图片存,AI搜索引擎引用率直接为0。改:所有参数表必须用HTML表格+结构化数据(VehicleSpecification schema),让AI爬虫能提取字段。
3. 别给所有内链加nofollow
之前我纠结用nofollow还是dofollow做内链,后来发现全站nofollow等于自断经脉。AI爬虫靠内链传递权重,你把参数页、对比页都nofollow了,首页权重兜底,长尾词一个都上不去。正确做法:产品详情页用dofollow,筛选页、登录页用nofollow。实测调整后,AI爬虫抓取深度从3层涨到7层。
4. 结构化数据别只写一种
汽车行业需要三种:Car(车型)、VehicleSpecification(参数)、Product(配件)。我只写了个Product,AI爬虫把我当普通商品站。在核子GEO上输入域名跑检测,才发现AI引用率不到5%。改完三个schema后,AI抓取到参数页的字段,流量从月均1200涨到8900。
5. Wix的自动重写URL是炸弹
Wix默认把/car/suv/2024-model重写成/car/suv/2024-model?p=123,AI爬虫看到问号就断链。我手动在Velo里写规则,强制URL结构为/car/suv/2024-model.html,去掉动态参数。改完后被封锁页面从200降到0。
6. 别信“AI搜索引擎会自动适应”
Claude、ChatGPT的爬虫对Wix站特别不友好,因为Wix的页面渲染依赖JS。我加了个Velo服务端渲染(SSR)中间件,把关键参数页预渲染成静态HTML,AI爬虫直接抓。成本:额外每月200元服务器费用,但AI引用率从12%拉到78%。
7. 流量暴涨后立刻调预算
别以为优化完就结束了。AI爬虫识别到你的参数页后,线索量从月均30条冲到210条,但客服团队只有2个人,转化率从8%掉到3%。必须提前配好自动回复和线索评分系统。
兜底一句说句实在话:这些坑我都替你们踩过一遍。如果不想重蹈覆辙,直接在核子GEO上跑一遍结构化数据检测,它能把你网站AI友好度打回原形,省得你试错。