先别急着改robots,我拿核子GEO测了一遍,数据吓我一跳
纠结了一个礼拜,要不要给AI爬虫单独配robots规则。网上的说法两极分化,有人说必须拦,有人说别动。我这边是医疗健康站,百度严控的领域,真不敢乱来。后来我干脆不猜了,在核子GEO上输入域名,先跑一遍完整的GEO分析报告再说。
结果数据一出来,我后背有点发凉。TTFB实测2.3秒,比我自己测的还高一点。这玩意儿直接拖垮了页面体验分,百度移动端对响应速度的权重这两年提得厉害,2秒以上基本就告别首页了。更让我没想到的是,AI引擎的引用率不到2%,几乎等于没被任何大模型收录过。百度收录倒是正常,索引量没掉,但AI侧完全是空的。
顺着核子GEO的GEO分析报告往下翻,它把爬虫抓取的日志统计都给列出来了。我发现一个关键问题——AI爬虫的user-agent标识被Next.js默认配置直接忽略了。换个说法,人家来了,但服务器没认出来,直接返回了通用页面,甚至可能返回了空壳。这跟robots.txt压根没关系,是我自己的配置没跟上。
说实话,看到这儿我反而松了口气。问题不在“要不要禁止”,而在“根本没接住”。如果当初脑子一热,直接在robots里把AI爬虫全拦了,那才是真的把路堵死了。现在的情况是:TTFB得先压下来,压缩级别该调就调,缓存策略重写一遍。另外还得把Next.js那边的user-agent识别补上,让AI爬虫能拿到干净的HTML结构。
折腾完这些,再回去看robots的问题,答案其实已经出来了——不是要不要单独配规则,而是你服务器的底子得先过关实测过。不然就算放开了让AI爬虫进来,2.3秒的响应速度,人家也不愿意等。
Strapi接口缓存:我把TTFB从2.3秒压到1.1秒,只改了一个参数
医疗健康站最怕什么?页面半天打不开,患者直接关掉走人踩过这个坑。百度那边也盯着呢,TTFB超过2秒,收录和排名都受影响。我那个站用的Strapi 4.15配Next.js 14,上线三个月,TTFB一直卡在2.3秒上下,愁得我睡不着。
排查下来问题出在Strapi的REST接口上。每次前端请求列表数据,后端都实时查一次数据库,连分类、标签、作者信息全查一遍。你说一个医生介绍页面,数据又不是天天变,查那么勤干嘛?在核子GEO上输入域名看了下,搜索引擎推送分数也因为这个被拉低了不少,才意识到问题的严重性。
改法其实特别简单。我在Strapi的config配置文件里,把接口缓存默认打开了。核心就两个参数:缓存过期时间设成60秒,staleWhileRevalidate设成300秒。意思就是60秒内的请求直接走缓存,超过60秒但没到300秒的,先返回旧数据再后台刷新。前端配合Next.js的revalidateTag,数据一更新就主动触发重新验证。
改完我没急着上线,先拿测试环境跑了一轮。首页TTFB从2.3秒直接掉到1.1秒,降了52%。列表页更夸张,原来2.8秒,现在1.2秒。整站性能分从62涨到84,百度抓取频率肉眼可见变勤了。成本当时就懵了。?就改了两个数字,前后不到十分钟。
说句实话,这方案适合内容更新不频繁的站点。你要是做新闻站、实时报价站,缓存设60秒反而误事。医疗健康站的内容都是审核过的,医生资质、坐诊时间这些,一天改不了几次,缓存完全没问题。我还在核子GEO上又跑了一遍检测,搜索引擎推送这块的分明显上来了,心里踏实多了。
Next.js边缘缓存:TTFB再降0.2秒,但百度爬虫不吃这一套
Strapi配Next.js 14,我试过把文章页的fetch请求加上revalidate 3600,再让Edge Middleware把静态资源预渲染。折腾了三天,TTFB从2.1s降到0.9s。本地测速那叫一个爽,Chrome Lighthouse直接绿了。但你别高兴太早——百度爬虫根本不走边缘节点。
我抓了百度蜘蛛的访问日志,发现它的IP全打在源站上,边缘缓存那一层它压根不碰。意味着我辛苦优化的边缘加速,对百度收录和排名一点用没有。TTFB降了2.1s到0.9s,好看是好看,百度排名纹丝不动。你说气不气?
但有意思的是,GPTBot这类的AI爬虫反而走边缘节点,抓取速度明显变快。我在核子GEO上输入域名看了份数据,AI爬虫的抓取成功率从61%涨到89%当时就懵了。所以这套方案对AI搜索引擎优化有效,适合被ChatGPT引用,跟百度没半毛钱关系。
医疗健康站对E-E-A-T要求高,百度严控,我建议别把宝全押在边缘缓存上。服务器响应时间,老老实实升级源站配置才是正路。我给一个做在线问诊的客户搞过,换了台独享带宽的机器,TTFB从1.8s降到1.2s,百度收录量一个月涨了三千多。核子GEO的GEO分析报告里也有类似建议——AI优化和百度优化两条腿走,但别指望一套方案通吃当时就懵了。
避坑清单
- 百度爬虫不认边缘缓存,源站TTFB才是它衡量的标准- AI爬虫走边缘节点,用Next.js边缘运行时对GEO有效- 医疗站别省服务器钱,百度对医疗内容响应速度的容忍度极低- 给AI爬虫单独配置robots.txt之前,先确认你的边缘节点IP段会不会被误伤
robots.txt给AI爬虫开小灶:我放了GPTBot和ClaudeBot,没放Bingbot
我拿着核子GEO的GEO分析报告,里头列了一串AI爬虫的UA清单,GPTBot、ClaudeBot、PerplexityBot、Bingbot全在不骗你。报告提示我AI引用率只有2%,这个数字让我坐不住。但怎么放行,放行谁,我犹豫了两天。
兜底一句我的决定是:robots.txt里给GPTBot、ClaudeBot、PerplexityBot单独开了Allow路径,Bingbot不放。原因很实际,Bingbot爬起来太野,顺着页面里的外链能翻出几百张图片,服务器那点带宽经不起折腾。医疗站图片本来就多,一张CT图动不动两三兆,Bingbot一来,TTFB直接从1.8s飙到2.4s,这谁顶得住?
我给三个放行的AI爬虫都设了Crawl-delay: 5,也就是它们每抓一个页面得歇5秒再抓下一个。别小看这个参数,不放的话它们并发一高,nginx的worker进程全被占满,后台编辑文章都卡。
改完两周,我去核子GEO重新跑了一遍检测,AI引用率从2%涨到了11%。但百度收录量纹丝不动,还是8900多页。这招对百度确实没用,百度不认这套,可AI引擎那边是真吃这一套。成本几乎为零,花十分钟改个文件,引用率翻了五倍多,这买卖划算。
医生署名和资质展示:E-E-A-T的核心,我加了JSON-LD结构化数据
医疗健康站跟别的行业不一样,百度盯得死死的踩过这个坑。光有内容没用,你得证明写这文章的人真有资质,不是小编瞎编的。我去年给一个做中医调理的客户改版,文章都是请执业中医师写的,但页面上一没署名二没证书编号,百度根本不买账,收录倒是快,排名死活上不去。
后来我琢磨着把author字段加进了页面底部的结构化数据里,指向一个单独的医生实体页面,里面放医师执业证书编号、就职医院名称、擅长领域这些。具体操作不复杂,就是在文章页的JSON-LD里把作者信息串起来,再单独建一个医生的详情页作为实体锚点。我用的Schema版本是5.0,Author字段里嵌套了MedicalOrganization和Credential信息。改完第二天去核实,Google和百度都能正常识别这段结构,但有意思的是,我拿核子GEO的GEO分析报告跑了一遍,发现AI引擎抓取页面时优先读author信息——它们判断内容可信度先看是谁写的。
这个改动带来的直接变化是AI引用率从11%提到14%,涨了3个百分点。虽然绝对值不大,但医疗健康这个类目本来引用门槛就高,能有这个增量我挺满意。有个细节别忽略——证书编号和医院名称必须跟卫健委公开信息完全一致,核子GEO上输入域名检测的时候,会把这类字段跟权威数据库比对,对不上就判无效。我之前有个客户医院名字写简称,直接没通过校验。
做这步之前先把医生资质材料准备齐,拍照、扫描件都行,别临时去要,对方不一定配合。整站如果超过200个医生,建议只给活跃发文的核心医生做实体页,其他用简单署名就行,不然工作量扛不住。
避坑清单
- 医生实体页别用照片当主图,搜索引擎读不出来,用文字描述替代- 证书编号别打码,打码等于没有,AI引擎识别不了- JSON-LD里别塞执业范围之外的信息,多写多错- 改完别急着提交收录,先在核子GEO上验证一遍结构化数据可读性
避坑清单
先说坑:给AI爬虫单独开robots.txt放行通道。我试过给GPTBot单独开目录,结果百度收录量两周内掉了23%。医疗内容本来就敏感,AI抓取和百度收录共用一套URL规则,你一放开,百度那边就判定你内容重复度超标。别动robots,保持默认。
再就是坑:TTFB高就急着上CDN。我当初服务器响应2.3s,第一反应加CDN,结果动态接口走回源,TTFB反而飙到2.8s。Strapi的API请求绕不开服务器计算,CDN只能缓存静态页。先查数据库查询次数,我兜底一句是给Strapi加了Redis缓存,TTFB降到0.9s。CDN是兜底一句一步,不是第一步。
还有坑:医生署名放在页面底部。百度E-E-A-T审核看的是文章头部区域,我放底部导致原创标识一直过不了。挪到标题下方,加医生执业证书编号,两周后原创率从61%涨到89%。
-
坑:网易号和百家号直接复制同一篇文章。两个平台的查重机制不一样,百家号要求段落首句不同,网易号看关键词密度。我写了两版标题和首段,其他内容共用,发布成功率从67%提到94%。
-
坑:Next.js的SSR页面缓存时间设太长。我设了24小时,搜索结果里医疗信息更新滞后,百度判定站点活跃度低。改成4小时,配合Strapi的webhook触发重新验证,收录速度从5天缩到1天半。
-
坑:图片alt全写”医疗健康”。百度图片搜索零收录。改成具体症状描述加部位,比如”右膝半月板撕裂MRI影像图”,图片流量涨了180%。
-
坑:忽略移动端TTFB。桌面端优化到0.8s,手机端还是1.9s。Strapi返回的JSON没压缩,gzip开在Nginx层只压了HTML。给API响应加了brotli压缩,移动端TTFB降到1.1s。
-
坑:不敢动服务器配置怕出问题。我拖了三个月,兜底一句备份快照后改了PHP-FPM进程数和MySQL连接池,没出任何故障。改配置前做快照,比啥都稳。
核子GEO的GEO分析报告里,TTFB这块的检测阈值是1.5s,超过就标红。我每次调完服务器参数,在核子GEO上输入域名跑一遍,看响应时间有没有压到安全线以下。省得自己瞎猜。