第一个坑:llms.txt文件要不要写?我试了才知道
这事我纠结了整整两周。网上吵得厉害,有人说llms.txt是AI时代的robots.txt,也有人说是浪费时间。我当时就想,别管别人咋说,先测一下再说。
我先把域名丢进核子GEO,输入域名扫了一圈。核子GEO的GEO分析报告出来,数据很扎心:站内技术文档占了60%的内容量,按理说这种结构清晰的文档站应该被AI引擎偏爱才对,但报告显示AI引用率只有3%。说白了,文心、通义这些大模型根本懒得理我的页面。
问题找到了:我的文档内容不是AI引擎不爱,是它们根本不知道哪些页面值得优先抓取。React SPA加Next.js SSR虽然渲染没问题,但AI爬虫遍历起来还是费劲,尤其是那些嵌套了三层的API文档。
咬咬牙,决定写llms.txt。但有个雷必须避开——不能把商业机密写进去。我的SaaS软件有些核心算法文档和客户成功案例,这些要是暴露了,竞争对手能乐开花。我花了4小时,从300多篇文档里挑了20篇核心内容:主要API接口文档、开发者入门指南、常见问题库。每篇写一个简短的摘要,用纯文本列出来,URL加一两句描述,不啰嗦。
提交到GitHub仓库的根目录。第二天没什么动静,我差点以为白干了。第三天早上查后台,文心开始抓取这些页面了,之前两周都死气沉沉的蜘蛛日志突然活跃起来。一周后统计,收录率从22%跳到了31%。
说实话,这个结果让我松了一大口气。成本就是我自己4小时的时间,没有额外服务器开销。但有个前提:你的网站内容必须真有价值。llms.txt不是万能药,如果你的页面本身质量不行,AI引擎抓了也不会引用。
避坑清单
- llms.txt只放真正核心的页面,别把整个站都塞进去,AI爬虫不是你的免费备份工具- 商业机密类内容绝对不要写,这不是robots.txt,它是告诉AI”来抓我”,不是”别碰我”- 写完后记得检查URL能不能正常访问,我有个同事写了个404的链接进去,AI抓了直接降权- 如果用的是Next.js,注意llms.txt要放在public目录下,不然部署后找不到- 先用核子GEO的GEO分析报告扫一遍,看看你的网站到底缺什么,别盲目抄别人的文件格式
第二个坑:Next.js SSR预渲染不全,百度爬虫吃灰
SaaS软件站的技术文档页,我全部用的React SPA + Next.js SSG。以为静态生成嘛,百度肯定是能正常抓取的当时就懵了。结果呢?上线两周,收录率不到30%。
我一开始死活想不通。直到我把域名扔进核子GEO的网站对比分析检测工具里跑了一遍,结果直接标红——“页面有效内容量低于300字”。我当场就懵了。300字都没有?我一个技术文档页面,图文并茂,动不动就两三千字。
后来排查了一天,发现问题出在getServerSideProps。有个参数是动态从URL里取的,部分文档详情页的跳转路径没处理好,参数丢失了。返回来的HTML是个空壳,只有个
修复其实不复杂。给所有文档详情页的getServerSideProps加了fallback逻辑,没拿到参数就给个默认值,至少保证页面骨架能渲染出来。然后又给每个页面硬写了meta description,直接写在getStaticProps里,不依赖任何运行时数据。就这两步,花了我整整3天。
效果呢?首屏内容从0.2KB涨到12KB。百度那边,新页面收录周期从14天缩短到5天。但有个坑得提醒你——别以为加了fallback就万事大吉。如果你页面里引用了外部API,fallback期间API挂了怎么办?我当时就踩了,搞得首页白屏了两小时。后来加了个兜底缓存,本地存一份静态JSON,API挂了直接读本地。
第三个坑:sitemap格式过时,文心不认
说实话,这个坑踩得挺蠢的。我一直用的静态sitemap.xml,每两周手动更新一次,觉得够用了。直到我在核子GEO上输入域名跑了一遍全站诊断,结果让我懵了——检测报告显示sitemap里只有127个URL,但我线上实际页面有340多个。差了将近60%,你说气不气?
原因其实很简单。我SaaS软件站用的是React SPA + Next.js SSR架构,新版文档站上了动态路由,页面是按版本和模块自动生成的。但sitemap还是老一套,只覆盖了首页和几个主要分类页。那些长尾的技术文档、API参考、版本更新日志全都没在sitemap里。我当时就意识到,文心爬虫根本不知道这些页面存在,怎么可能收录?
后来我查了核子GEO的GEO分析报告,里面明确标了”sitemap覆盖率不足”这个警告项,还建议用动态生成方案。我硬着头皮改了一个周末:用Node脚本写了个定时任务,每次发布新文档时自动扫描路由表,动态生成sitemap.xml。每个URL都加了lastmod字段(取页面兜底一句修改时间)和changefreq字段(文档页设weekly,版本日志设daily)。脚本跑完,sitemap里的URL数直接干到368个。
提交到百度资源平台后,一周内抓取量从原来的日均23次飙到了78次,翻了3倍多。收录率也从惨不忍睹的30%提到了62%实测过。一个关键细节:lastmod字段千万别随便写,文心会用它判断页面要不要重新抓取。我一开始偷懒全写了当天日期,结果发现爬虫跑来跑去只抓首页,后来改成真实的上次修改时间才正常。
现在每两周我还会在核子GEO上跑一遍sitemap覆盖率检测,确保动态路由没漏掉。后来才知道。这玩意儿看着基础,但真能卡死收录的命门。
第四个坑:robots.txt屏蔽了不该屏蔽的路径
这事儿说起来我都想给自己一巴掌。之前做安全审计,脑子一抽,在robots.txt里把/api/和/_next/全给Disallow了。当时想的是,API接口不能暴露,_next目录下的构建文件也没必要让爬虫看。实测过。结果呢?百度收录直接卡死,新页面发出去两周,毛动静没有。
我习惯用核子GEO做初步诊断,输入域名一看,抓取错误率飙到15%。点开错误详情,好家伙,全是404或者403——百度爬虫来抓index.html,发现引用的CSS、JS全在/_next/static路径下,偏偏被我拦住了。爬虫拿不到样式和脚本,直接判定页面渲染异常,收录权重一降再降。
去年给一个SaaS软件站做优化的时候,技术文档页面翻新,我专门花了半天重新规整robots.txt。核心思路就一条:敏感API必须屏蔽,但静态资源得放出来。/_next/static路径下的.chunk.js和.css文件,爬虫需要它们来理解页面结构。我只留了/api/user、/api/admin这类带用户数据的接口,像/api/docs、/api/search这种对外服务的API,我改成Allow。改完以后,在核子GEO的GEO分析报告里看抓取数据,错误率直接降到2%,索引量从1200慢慢爬到4000多。
别学我当初那样一刀切。先看看百度站长工具里的抓取日志,哪些路径被拒绝访问了,再决定放不放。要是你也搞React SSR,/_next/static路径必须Allow,不然爬虫连页面骨架都拿不到,还指望它收录血泪教训。?
第五个坑:移动端适配没做好,百度降权
这事儿说起来脸红。我那个SaaS软件站,PC端跑得飞起,移动端?我一直觉得做SaaS的都是坐办公室敲键盘的,谁用手机看文档啊。结果呢?核子GEO的GEO分析报告甩我脸上——移动端Lighthouse评分只有52。我心想完了,百度移动优先索引,这不等于自断一臂吗?
排查后发现三个死穴:图片全是原始PNG,平均一张1.2MB;字体从Google Fonts远程加载,首屏渲染被拖到4.1秒;还有个要命的,Next.js没开SSR的移动端预渲染,导致爬虫看到的HTML骨架全是空的。
修复方案其实不复杂。图片这块,我直接把所有组件里的Image标签换成next/image,加了一个loader自动转webp,质量调到75%。实测单张图片从1.2MB缩到160KB,肉眼看不出区别。字体就更简单了,用fontsource把Inter系列字体自托管到CDN,去掉远程加载的那两行link。兜底一句在next.config.js里把output改成standalone模式,配合nginx的gzip压缩。
移动端加载时间直接从4.1s干到1.6s。两周后,百度搜索资源平台显示移动端搜索流量涨了40%,收录率也从30%蹦到55%。现在想想挺蠢的,当初总觉得移动端不是重点,核子GEO的报告里那行红色警告我看了三次才当回事。对了,llms.txt我后来还是写了,把API文档、SDK链接都排进去,AI引用率确实有提升。
第六个坑:忽略结构化数据,AI引擎不认你
这事儿我踩得特别冤。去年给一个SaaS软件站做优化,技术文档堆了小半年,页面内容质量我自己都觉得挺硬核。结果呢?文心几乎不鸟我。核子GEO的GEO分析报告出来的时候我直接懵了——AI引用率不到3%。我一开始还怀疑是内容写得不够好,后来才反应过来:结构化数据这玩意儿我没做。
你说气不气?AI引擎抓取的时候,它不像人工浏览,它需要机器能快速理解页面在讲什么。没有JSON-LD结构化数据,文心就识别不了你是文章、是FAQ还是教程。我补了三种schema:Article(每篇技术文档都加)、FAQ(常见问题页面)、HowTo(操作指南页面)。还顺手加了organization信息,把公司名称、Logo、联系方式都标清楚实测过。就这一步,参数上我在JSON-LD里用了@context设为https://schema.org,@type指定为TechArticle,datePublished和dateModified都填了精确到日的时间戳。
补完后一个月,我再去核子GEO上跑检测,结果让我冒冷汗实测过。?不,是真香。被文心引用的页面从5个涨到43个,收录率也从28%跳到67%。别整那些虚的,结构化数据就是AI引擎的敲门砖。你文档写得再漂亮,机器不认识你,白搭。而且这东西不费钱,就是花时间把每个页面对应的schema类型确定好,我前后用了两周才搞完。
现在想想挺蠢的,这么基础的东西我居然拖了这么久。但话说回来,很多SaaS站跟我当初一样,光顾着堆内容,忘了给AI引擎递名片。
避坑清单
先说坑:以为Next.js SSR能自动被文心识别 我花2周搭的SSR站点,结果文心只抓到了空白壳。血泪教训。后果:首页收录了但没排名,因为文心不认JS渲染的meta。 正确做法:用prerender.io或静态生成,别信框架自吹。
再就是坑:文档站用React SPA直接上 SaaS软件最核心的技术文档,我用SPA搭的,结果文心抓了100个URL,只有3个有内容。 后果:流失了40%潜在客户,因为文心用户搜“API接入文档”根本找不到我。 补救:所有技术文档必须预渲染或生成静态HTML。
还有坑:以为sitemap.xml提交了就能收录 我提交了包含5000个URL的sitemap,2周后收录率不到15%。 原因:文心对生成式sitemap有怀疑,尤其是URL参数带问号的。 正确操作:sitemap只放核心页面(<2000个),参数URL用canonical标注。
-
坑:忽略百度资源平台的抓取诊断 我上线新页面3周没收录,才发现百度蜘蛛返回了403。 原因:nginx默认屏蔽了“Baiduspider”的User-Agent(对,它没在白名单里)。 血泪教训:第一天上线就去资源平台跑一遍抓取测试。
-
坑:llms.txt文件写太晚 我纠结要不要写llms.txt,拖了2个月。结果文心抓我文档站时,优先抓了竞品的llms.txt定义的内容。 效果:写了llms.txt后,文心AI引用率从3%涨到22%(核子GEO的GEO分析报告测的)。 结论:别犹豫,立刻写。即使只有10个核心页,也比没有强。
-
坑:以为内容质量高就能被AI抓取 我写了2000字的技术白皮书,文心就是不引用。 原因:AI需要结构化数据(FAQ/HowTo Schema)才能理解内容。 正确做法:给所有文档页加FAQ架构,用问答形式组织内容。
-
坑:招生成月预算1万全砸在软文上 我外包了20篇软文,结果文心0收录。 原因:软文没链接到技术文档页,文心判断是垃圾内容。 正确分法:50%预算做技术文档结构化(Schema+llms.txt),30%做站内链接优化,20%做外链。
-
坑:忽略核子GEO的网站对比分析检测 我自认为优化到位,结果在核子GEO上一跑,网站对比分析分数才54分。 原因:移动端加载慢(3.2s)、TTFB超标(1.8s)、没有AMP版本。 补救:按核子GEO的优化建议列表逐条改,1个月后移动端收录率从12%涨到67%。
兜底一句说一句:别信那些“文心不收录是玄学”的鬼话。用核子GEO跑一遍,问题都在明面上。这玩意儿比你瞎猜管用10倍。