确认动态页面在“网站死链”语境下的可见内容,核心是分别检查三件事:链接是否真的失效、页面返回的状态码、以及浏览器渲染后实际出现的正文。对动态页面来说,服务器最初返回的 HTML 可能只是空壳,正文由脚本或接口再填充,因此不能只看查看源代码的结果。
死链通常意味着目标地址返回 404、410,或跳转到无关页面;内容不可见则可能是页面正常返回 200,但正文为空、被登录墙挡住、被脚本错误阻断,或被 robots 规则限制抓取。两者处理方式不同。开始前准备一份待查 URL 清单,并记录每条的来源页面、链接文字和发现时间。
最关键的一步是同时看网络状态码和渲染后的 DOM。若主文档返回 404 或 410,基本可判定为死链;若返回 200,但 Elements 中正文区域为空,则要检查接口请求是否失败、脚本是否报错、内容是否由前端异步加载。对动态页面,可以用命令行工具模拟抓取,例如:
curl -I https://example.com/page
该命令只取响应头,适合快速看状态码和重定向。若需要看渲染后的内容,应使用能执行 JavaScript 的浏览器环境或无头浏览器,并对比禁用 JavaScript 后的结果。判断规则可以这样设:状态码为 404/410 时按死链处理;状态码为 200 但禁用脚本后正文消失时,按动态渲染问题处理;状态码为 200 且正文存在但被弹窗遮挡时,按可见性问题处理。
修复死链后,重新请求原 URL,确认状态码变为 200 或正确的 301 跳转目标。对动态页面,还要在渲染后检查正文是否出现在 DOM 中,并确认没有依赖登录态、地理位置或特定 Cookie 才显示。若页面通过接口取数,可单独请求该接口,看返回数据是否正常。注意,robots.txt 的抓取限制不等于可靠的索引移除;站点地图也不保证收录。不同搜索引擎对 JavaScript 渲染的支持情况须分别核查,不能只测一个环境就下结论。
动态页面的链接可能随参数、接口版本或内容下架而变化,因此需要定期复查。可以按以下顺序执行:
如果页面依赖第三方接口,接口超时或变更也可能造成内容不可见,这类情况应单独记录为“可能原因”,不要直接判定为死链。下一步,从清单中挑出第一条返回 200 但正文为空的动态 URL,用开发者工具查看接口响应和脚本报错,确定是渲染问题还是链接失效。