先给结论:不要先怀疑整站被降权,而应把“正常页面”和“异常参数页”当成两组对照样本,在同一域名下逐步固定变量。最小动作是选一个正常URL和一个异常URL,只改变一个条件分别请求,记录状态码、响应头和正文首屏差异。这样做的结果决定下一步:若差异只跟参数有关,就查参数生成逻辑;若差异跟路径或模板有关,就查模板和缓存规则。需要说明的是,缺少日志或权限时,这仍是可执行的最小取证,但不能据此断定任何搜索引擎的收录或排名结论。
同一高外链域名下,不带参数的栏目页、文章页能正常返回内容,而带 ?id=、?page=、?from= 等参数的URL出现空白、跳转、状态码异常或内容错位。常见解释有两类。
两种解释会导向完全不同的修复方向。前者改参数规则或缓存键,后者改模板或数据层。因此必须先找到能区分它们的证据。
可用一个假设例子说明比较方法,数字仅用于说明对照思路,不代表真实项目结果。
假设正常页为 /list,异常页为 /list?page=2。分别做四组请求并记录:
/list,记录状态码、响应头和正文关键片段。/list?page=2,同样记录。/list?page=3,看异常是否随参数值变化。/list?other=1,看换成无关参数是否仍异常。若只有 page 参数异常,且 page=3 同样异常,而 other=1 正常,证据更支持参数处理层问题。若 page=2、page=3 都异常,但另一条路径 /detail?page=2 正常,则更支持模板或数据层问题。若所有带参数URL都异常,而纯静态路径正常,优先查缓存键和重定向规则。
这里有一个实际动作:把上述四组请求的响应头中的缓存状态、内容类型和跳转目标并列记录。若缓存状态在正常与异常请求间不同,下一步应检查缓存键是否包含参数;若缓存状态相同而正文不同,下一步应检查模板分支和参数校验。这个动作的结果直接决定排查顺序,而不是继续扩大抓取范围。
没有服务器日志、没有缓存配置权限、没有搜索引擎后台数据时,仍可做三件事。
robots.txt 是否对带参数路径有抓取限制。注意,抓取限制不等于可靠的索引移除;它只影响抓取,不能替代对参数页本身的处理。这些动作能缩小复现条件,但不能推出的结论包括:不能因为某参数页返回正常就认为该参数不会被搜索引擎单独处理;不能因为站点地图列出了参数页就认为它会被收录;也不能因为整站启用了HTTPS就认为参数页没有安全问题或排名优势。
当对照请求显示异常只出现在某一类参数时,下一步不是立刻改代码,而是确认该参数是否由站内链接、站点地图或外部链接引入。若参数只来自外部链接,而站内导航不生成该参数,可先考虑规范化或屏蔽抓取;若参数由站内分页、筛选生成,则应优先修模板或参数校验,而不是简单屏蔽。
判断依据是:站内生成的参数页通常承担导航或内容发现功能,直接屏蔽可能影响正常路径;外部引入的参数页若内容与主URL重复,处理方式可以更直接。不同搜索引擎对参数的处理和支持情况须分别核查,不能用一个平台的表现推断另一个平台。
最后,把每次对照请求的结果写成一行记录:URL、参数类型、状态码、缓存状态、正文是否正常。连续记录几组后,异常边界会比单次抓取更清楚,也能避免把一次偶发失败当成整站问题。