搜尋引擎抓取頁面时,預設以移動端 UA 為主。蜘蛛看到的,往往就是你在手机屏幕上呈現的那一版。如果移動版内容比桌面版少、正文被折叠、或者跳到一個空壳頁,蜘蛛對這一頁的判断也會跟着打折。下面几件事,适合放進站点运营的例行检查里。
先確認蜘蛛抓到了哪一版
與其凭感觉猜,不如直接從服務器日誌入手。篩選移動端 UA 的记錄,把狀態碼、响應体大小、最终 URL 三項拉出来,和桌面端 UA 的记錄做對照。如果同一篇文章在移動 UA 下返回的字节數明顯偏小,通常說明移動版砍掉了正文或列表内容。
同时看一眼抓取频率的分布:如果移動 UA 的請求量遠低于桌面 UA,可能只是抓取尚未完全切換,也可能站点在 robots 或服務器层面對移動 UA 做了区別對待。這两種情况的處理方式完全不同。
移動端内容要能撑起這一頁
- 正文是否完整呈現,還是只留了摘要、必须点按钮才展開;
- 價格、參數、联系方式等關键信息是否只在桌面版出現;
- 图片在移動端是否仍然保留了 alt 描述,而不是被換成背景图;
- 正文里的内鏈是否被大量删减,只剩下一套導航;
- 评论区、表格、代碼块這類内容是否被整体隐藏。
用 CSS 隐藏内容並不等于蜘蛛看不到,但隐藏後的内容在頁面中的權重通常會被压低。如果某些内容對用戶和蜘蛛都重要,最好让它預設可见,而不是折叠起来。
三種常见做法各自的注意点
响應式
同一套 URL、同一份 HTML,靠媒体查询适配。這種结构對蜘蛛最友好,只要確認没有用 CSS 或 JS 把正文在窄屏下移除即可。检查时把浏览器窗口拖窄,看正文是否還在 DOM 里可见。
獨立移動站
常见形式是 m 開头的子域或子目錄。這種情况下,移動版頁面的 canonical 應指向自己,桌面版頁面的 canonical 也指向自己,两者之間用等價關系說明。不要互相指成閉环,也不要把移動版的 canonical 全部指向桌面版,那會让移動版頁面失去獨立身份,也让蜘蛛摸不清到底以谁為准。
按 UA 動態返回
服務器根據 UA 返回不同 HTML,共用同一個 URL。這種做法的風險在于缓存:如果 CDN 或反向代理把移動版頁面缓存後返回给了桌面 UA,或者反過来,就會出現移動版内容出現在桌面訪問里的情况。確認缓存键里包含了 UA 或设备類型,必要时對两類請求做区分。
容易被忽略的几處
- 视口 meta 缺失,移動端按桌面宽度渲染,用戶需要缩放,蜘蛛拿到的布局同样是错的;
- 首屏彈出全屏插屏广告或 App 下载引導,把主要内容压在下面;
- 移動端單獨做了一套跳轉規則,桌面訪問被强行跳到移動版,形成来回跳;
- 字体過小、点击目标過密,這属于体驗层面的問题,但會一並反映在頁面质量评估里;
- 移動版的 CSS、JS、图片资源加载失敗,導致頁面渲染不完整。
一份可以照着做的自查流程
- 用移動 UA 抓取几個代表性頁面,记錄狀態碼和 HTML 大小;
- 把移動版 HTML 與桌面版 HTML 對比,看正文、内鏈、结构化資料的差异;
- 检查视口設定,以及首屏是否被彈窗遮挡;
- 如果是獨立移動站,核對两侧 canonical 與等價關系;
- 如果是動態返回,確認缓存策略不會把两版内容串味;
- 把發現的問题按影响面排優先級,先修内容缺失,再修细节体驗。
移動優先不等于桌面版可以放着不管。用戶仍然會在电脑上訪問,蜘蛛也只是把移動版当作主要參考。两邊内容保持一致,才是最省事的狀態。
這件事不需要一次做到完美。先把正文完整性、canonical 關系和缓存串味這三類問题解决掉,剩下的细节可以随内容更新一起慢慢补。