搜索引擎现在主要以移动版页面作为抓取和建立索引的基准。蜘蛛看到的是移动端渲染出来的那份内容,而不是你在桌面端浏览器里看到的那一份。如果桌面版有完整正文,移动版因为改版、模板差异或加载策略只剩下标题和一小段摘要,索引里能记录的也就只有这些。这谈不上惩罚,只是它确实没看到。
移动版和桌面版不一致的常见场景
- 独立的 m 站或子域名,模板由不同团队维护,正文区块的更新经常不同步;
- 响应式站点但用 CSS 隐藏了部分内容,比如 display:none、visibility:hidden、高度为 0 的折叠容器;
- 移动端为提速做了内容裁剪,只放前两百字加一个"展开全文"按钮,而展开依赖点击后的脚本请求;
- 懒加载或无限滚动,蜘蛛滚动不到的部分其实没有进入 DOM;
- 移动端单独设置了更严格的 robots 规则,或者误加了 noindex。
被 CSS 隐藏的内容算不算数
用样式隐藏、但仍存在于 HTML 里且用户点击可展开的内容,通常还是会被读到,只是在内容权重的判断上会打折。真正麻烦的是内容压根不在移动端 HTML 里:例如需要第二次异步请求才能拿到,或者必须登录、必须交互才会注入。这类内容对蜘蛛来说等同于不存在。
判断方法不复杂。用移动端 UA 抓一次页面,看原始 HTML 里有没有你要的正文文字,再对比渲染后的 DOM,两者差异就是需要处理的地方。
一套可执行的自查顺序
- 用移动端 UA 获取 HTML,确认目标正文文字是否出现在源码和渲染结果中;
- 对比移动版与桌面版的 title、H1、正文首段、主要内链位置是否一致;
- 检查移动版是否有自引用 canonical,有没有误指向桌面版地址;
- 检查 robots meta、X-Robots-Tag 与 robots.txt 在移动端是否和桌面端一致;
- 确认索引里被选中的是移动版还是桌面版 URL,与你的预期是否相符;
- 翻日志,看移动端蜘蛛的抓取量、状态码分布和抓取到的页面体积是否异常偏小。
几个容易踩的点
一是 m 站与桌面站的 canonical 写反,两边互相指错,结果索引里的 URL 和实际被抓取的版本对不上,排查时会显得非常混乱。二是移动端把结构化数据、面包屑、发布日期整块去掉,这主要影响展现形态,和能不能被收录是两件事,不要混在一起讨论。
三是"展开全文"的处理方式。如果只是 CSS 收起,问题一般不大;如果点击后才发请求再渲染,最好让正文默认就存在于 HTML 中,折叠只作为视觉手段。
先确认蜘蛛在移动端能拿到什么,再去讨论内容质量和收录结果。移动端 HTML 里没有的东西,后面的优化都无从谈起。
小结
移动优先并不是多加了一道门槛,而是把"蜘蛛看到的版本"直接换成了移动版。自查的重点只有一个:你在桌面端引以为傲的那部分内容,在移动端 HTML 里是否真实存在,并且和桌面端保持一致。把这一步做扎实,再去看索引状态和展现情况,判断会清晰很多。