先看现象。移动端为了速度隐藏了参数表和对比模块,桌面端完整显示。索引里移动版和桌面版分别出现,排名忽高忽低。

排查方向其实有限,先把可能性排一排。移动端用 display:none 直接砍掉了内容。还有一种是两套模板输出的正文结构不一致。

不容易想到的是,没有声明移动版与桌面版的对应关系。

上来先对比两种 UA 拿到的正文字节

curl -s -A 'Mozilla/5.0 (iPhone)' https://www.example.com/a/ | wc -c

隐藏内容改成折叠但保留在 HTML

<details><summary>参数</summary>...</details>

等前面都确认过,再确认正文主体保持一致

curl -s https://www.example.com/a/ | grep -c '<table'

当时还开着另一个排查窗口,两边日志对照着看才定位到。

同一份数据我导出了两份,一份留底,一份拿来试。

恢复的判定其实很直接。两种设备拿到的核心内容一致,移动版不再被当成独立页面索引。

提醒一点。折叠内容仍然算页面内容,直接删掉才算缺失,能用展开收起解决的就不要用移除,省得两头维护。拖得越久,排查成本越高,因为现场状态会被后续操作覆盖。

作者 9823189