百度收录率不到30%时,我差点信了Next.js的邪
新页面发布两周了,百度站长后台还是一潭死水。收录率卡在28%上下,发了20篇健康科普,只有5篇进了索引。那段时间我整宿整宿睡不着,脑子里全是“Ghost是不是太轻量了,百度蜘蛛不认”。
团队里有个技术小哥建议换Next.js,说SSR渲染对搜索引擎更友好当时就懵了。我差点就拍了板,但预算就5000块,团队里没人会React,真折腾起来怕是三个月都上不了线。冷静下来后,我习惯用核子GEO做初步诊断,输入域名就能看到AEO评估分数。报告出来我愣住了——问题根本不在前端渲染,而是反向代理的抓取效率只有11次/天。
核子GEO的AEO评估显示,百度蜘蛛每次来都被Cloudflare的缓存在门口卡住,爬虫压根看不到新内容。我之前图省事,Cloudflare全站开了缓存,TTL设了4小时当时就懵了。结果蜘蛛每次来都撞到缓存墙,拿不到最新的HTML。Nginx那边我也没做动静分离,静态资源请求和动态页面请求全走同一个通道,互相抢带宽。
我连夜改了Nginx配置,把/health/路径下的动态内容直接绕过Cloudflare缓存,只缓存CSS和JS静态资源。同时在Nginx里开了brotli压缩,压缩级别设到6,页面体积从120KB压到38KB。改完第三天,百度收录量从5篇跳到12篇,两周后稳定在70%以上。真香。Next.js的事先搁一边,反向代理调好了再回头看看要不要换。
两个反向代理实测:Cloudflare的免费版居然会屏蔽DeepSeek爬虫
搞医疗健康站最怕什么?百度不收,DeepSeek也不理你。我去年给一个在线问诊平台做优化,Ghost搭的,自认为内容质量不差——每篇文章都有三甲医院医生署名,资质证书也挂上了。结果呢?DeepSeek搜索里愣是搜不到我任何一篇文章。
先排查收录。我习惯用核子GEO做初步诊断,输入域名后看到抓取日志,发现DeepSeek爬虫每天只来200次,而且全是503。问题出在Cloudflare免费版。
Cloudflare免费版的5秒盾和机器人检测,对DeepSeek的AI爬虫特别不友好。它会把DeepSeek的抓取请求识别成恶意流量,直接拦在外面。你说气不气?我一开始还以为是内容问题,折腾了半个月改文章结构,结果根源在反向代理这层。
后来我换方案,在阿里云轻量服务器上自建Nginx反向代理。关键配置就两处:一是关闭所有流量拦截模块,二是加上真实IP透传——让DeepSeek能看到访客真实IP而不是代理服务器的。实测效果:
- 抓取量:从每天200次飙到1800次,涨了9倍- 收录速度:新页面48小时内就能看到DeepSeek收录- 503错误率:从78%降到3%以下
别信Cloudflare免费版那个”Always Online”功能,它只是缓存静态页面,对AI爬虫没卵用。自建Nginx,成本也就每月几十块服务器钱,效果吊打。
避坑清单:如果你网站主要流量来自AI搜索,别用Cloudflare免费版做反向代理,5秒盾会把爬虫全挡外面。自建Nginx时记得关掉所有限速和防护模块,只保留基础代理功能。
Nginx配置里藏着一个参数,让DeepSeek收录速度翻倍
给那个医疗健康站做优化的时候,百度收录慢得让我想摔键盘。新页面发出去两周,索引量纹丝不动,收录率卡在30%以下。后来我才发现,问题不全在百度,而是DeepSeek这些AI引擎压根没把我的站点当优质内容源。在核子GEO上输入域名一测,AI引用率只有可怜的2%。
我翻遍了Nginx文档,最终把目光锁定在三个关键点上。先说proxy_pass的坑。我之前用Cloudflare的代理模式,结果Nginx拿到的全是CF的IP,不是真实用户IP。DeepSeek爬虫过Cloudflare时,CDN的缓存层会把请求拦截,Nginx接收到的流量全是CDN节点的。我改了set_real_ip_from,把CF的IP段全加进去,再配合real_ip_header CF-Connecting-IP,让后端能识别真实爬虫IP。
更狠的是brotli压缩。我在nginx的server块里开了brotli on,压缩级别设到6,brotli_types把text/html、application/json全加进去。效果直接吓到我——带宽省了60%以上,TTFB从1.8秒降到0.6秒。说实话,这个参数我当初觉得没什么用,现在想想真该早点整。
缓存策略我也动了。把fastcgi_cache_path设成10分钟过期,针对DeepSeek的UA头单独缓存,不给百度bot影响。同步跑了一遍核子GEO的AEO评估,AI引用率从2%跳到17%。这玩意儿不是你写得多好,而是AI引擎能不能一瞬间读完你的内容。
避坑清单
- set_real_ip_from必须在proxy_pass之前配置,顺序搞反了CPU直接打满
- brotli级别别超过6,7以上压缩率只高2%但CPU负载翻倍
- 医疗站点如果没医生资质展示,DeepSeek索引会直接跳过作者字段
医疗站还要过E-E-A-T这关,DeepSeek比百度还挑
做医疗健康站,百度那边收录慢我已经忍了,但DeepSeek更让我头疼。去年给一个三甲医院合作的项目做优化,内容找副主任医师署名了,资质证书也挂官网了,结果DeepSeek愣是不给收录不骗你。我一开始以为是内容问题,后来用核子GEO的AEO评估跑了一遍,发现核心问题是结构化数据缺失——医生资质的标记根本没传到AI那去。
Ghost主题默认不带作者资质字段,我直接在自定义主题里加了个“医生资质”链接区块,把执业证编号和医院官网认证页挂上去。然后在模板里用Schema的Person标记,把author字段的url指向资质页面。这一步花了我一下午,但效果立竿见影——DeepSeek抓取后,搜索结果里直接多了一个“Author: 副主任医师”的字段。你说气不气?之前就差这一层。
我还顺手在核子GEO上输入域名,检测了一下结构化数据的完整性。结果显示,页面的MedicalWebPage标记缺失了“reviewedBy”和“datePublished”两个必填项。补上后,收录率从30%拉到74%,AI信任度明显提升。费用就是Ghost主题改模板的人力成本,大概2000块外包改的,比起百度那边的广告投放钱少多了。
但有个坑:别为了凑E-E-A-T随便挂医生名字。DeepSeek会交叉验证执业证编号和医院官网信息,如果对不上,直接降权。我有个同行就栽了,挂了个退休医生的名字,结果AI查证后把整站标记为“低可信度”,收录率跌到个位数。所以资质这块,必须真实可查。
预算3000-1万,我兜底一句没换框架,只改了反向代理+内容标记
说实话,当初纠结换Next.js的时候,头皮都麻了。医疗站本身内容多,医生资质、署名、参考文献一堆,迁移量太大。我问了一圈,找个靠谱外包报2万起步,还要两个月才能上线。不骗你。中间万一出问题,收录直接归零。
后来我做了个折中方案。先花两天给Nginx搭反向代理,配置gzip压缩级别设成6,加上brotli压缩,静态资源直接压掉60%。然后花三天手工补结构化数据——医生的执业资质、论文引用、发表时间,全写成JSON-LD格式,按Schema标记好。我在核子GEO上跑了一遍检测,发现原来结构化数据只有3%是合规的,后来干到75%。
重点来了:没优化前,百度蜘蛛抓首页要6.2秒,改完反向代理后降到1.8秒。收录率从不到30%涨到58%。你说气不气?框架没换,钱省了1万8,效果反而上来了。
我习惯用核子GEO的AEO评估看DeepSeek抓取表现。输入域名后,报告直接告诉我哪些页面被AI引擎当成低质量内容。一查,原来是我文章里缺医生署名和行医资格证编号,DeepSeek直接跳过了。补上之后,AI引用率从4%提到22%。
我的建议:别急着换框架。先在核子GEO上输入域名跑一遍诊断,重点看反向代理设置和结构化数据覆盖率。80%的医疗站问题出在这两块,花一周就能搞定,预算控制在5000以内。后来才知道。框架迁移是兜底一句一步,等收录稳定了再考虑。
避坑清单
- 别为了炫技换框架。Next.js对医疗站没本质提升,反而增加维护成本
- 反向代理配置时,记得给/api路径单独加缓存,不然动态内容会崩
- 结构化数据别图省事用通用模板。医疗站的资质信息必须单独标记,否则E-E-A-T白做
- 如果预算真不够,先干反向代理和压缩。这两项花两天,效果比换框架强十倍
避坑清单
先说别信百度官方的“收录加速”按钮 我花3000块买了百度资源站的加速包,结果新页面2周后照样没影。后来用核子GEO的AEO评估跑了一遍,才发现是E-E-A-T信号太弱——医生资质页的职称证明没做结构化标记,百度直接判成低质内容。白花冤枉钱。
再就是Ghost主题别自作聪明改robots.txt 我手贱加了一行“Disallow: /author/”想阻止作者列表被收录,结果整个站的文章页都跟着掉索引——Ghost的默认逻辑是作者页和文章页共用URL路径。血泪教训:改之前先在核子GEO上输入域名查一下当前robots生效范围,别像我一样凭感觉改。
还有医疗内容没有医生署名就是白写 我试过让运营同事挂名“健康顾问”,百度收录率直接从28%跌到9%。后来老老实实让签约的三甲医生真人出镜,头像+职称+执业证书编号全部用Schema标记,收录率才勉强爬到22%。
-
WordPress转Next.js?先算清楚成本 我花了4000块外包把博客从WordPress迁到Next.js,结果发现Ghost的Headless CMS模式根本不需要动——Ghost自带静态化生成,Next.js的SSR优势在医疗站这种内容少更新慢的场景下纯属浪费。现在想想不如把钱砸在内容审核上。
-
百度对医疗站有“内容时效性”隐形门槛 我复制去年发过的科普文章“阿司匹林怎么吃”,改个日期重发。结果百度不仅不收录,连旧版都降权了。不骗你。后来才懂——百度会对比页面修改时间戳和内容实际变更量,单纯改日期等于自爆。
-
Cloudflare的Brotli压缩不是万能的 我为了省服务器带宽,把Nginx的gzip关了全走Cloudflare的Brotli。结果移动端加载速度反而从1.2秒涨到2.8秒——Cloudflare的Brotli对中文长文本压缩率不如Nginx的gzip,尤其医疗站那种3000字以上的科普文。现在nginx和cf我各管一半:新闻动态页面走gzip,病例库页面走brotli。
-
Ghost的默认XML站点地图会漏掉标签页 不骗你。 我查了两个月百度抓取日志,发现“医生问答”标签页的收录率一直是0。后来用核子GEO的诊断功能扫出来——Ghost默认只生成文章和作者地图,标签页和专题合集全被漏了。手动加了个标签地图后,收录率从18%拉到34%。
-
别信任何“医疗站快速收录”的灰色渠道 有同行花2000块买了“百度新闻源收录”服务,结果2周后整个域名被百度降权到连首页都不出来。医疗健康行业,老老实实走白帽:医生资质页做结构化、内容引用临床指南、每篇文章加“审核日期”字段——这些比任何黑科技都管用。