检查404错误页面之前,至少需要准备四类信息:发生404的完整URL、该URL原本应指向的内容或功能、服务器与CDN的访问日志、以及站点当前的URL规则与跳转配置。缺少其中任何一项,都只能猜测原因,无法判断是链接写错、页面被删、规则冲突还是抓取异常。适用前提是:你已经确认该地址返回的是404状态码,而不是403、500或跳转到首页。如果状态码本身还没确认,应先完成这一步,再进入下面的准备清单。
不要只记录“某个页面打不开”,要记录协议、主机名、路径、查询参数和结尾斜杠。例如 https://example.com/old-page/ 与 http://example.com/old-page 在部分服务器配置下可能返回不同结果。同时记录请求方式:浏览器直接访问、站内链接点击、外部链接进入还是搜索引擎抓取。判断结果的方式是:如果只有带查询参数的版本404,而干净路径正常,问题更可能出在参数处理或重写规则;如果所有版本都404,则更可能是文件或路由确实不存在。
需要明确它过去是文章、产品页、分类页、图片、下载文件还是接口地址。这决定了修复方向:内容仍在但换了地址,适合做301跳转;内容已彻底删除,适合返回410或保留404;只是站内链接写错,直接改链接即可。准备时把原始标题、发布时间、所在栏目、是否有替代页面一并列出。如果没有这些信息,可以先用站点地图、历史备份或内容管理系统里的回收站核对。注意:站点地图只说明你希望被收录的URL,不保证这些URL当前可访问,也不能作为404原因的最终证据。
日志能回答“谁在什么时候请求了这个地址、返回了什么”。需要准备的字段包括:时间、客户端IP或用户代理、请求方法、完整路径、状态码、来源页。若站点使用CDN或反向代理,还要同时准备边缘节点日志和源站日志,因为边缘缓存可能返回404而源站实际正常,也可能相反。查看时先按状态码筛出404,再按路径聚合,观察是单个URL还是整段目录。若日志中该路径从未成功返回过200,说明它可能从未存在,而不是“最近失效”。
需要准备当前的重写规则、跳转表、路由配置和robots.txt。重点核对三件事:是否存在把某类路径统一改写的规则;是否有旧域名或旧目录的跳转遗漏;robots.txt是否屏蔽了相关路径。这里要区分两个概念:robots.txt的抓取限制不等于可靠的索引移除,它只影响抓取,不直接决定已收录页面是否消失;而404是服务器对请求的响应,两者不能互相替代。检查时逐条比对规则顺序,因为多条规则叠加时,先匹配的规则可能拦截了本应跳转的请求。
假设某篇文章从 /a/ 迁到 /b/,但旧链接仍指向 /a/。准备信息后应能判断:旧路径是否配置了301、新路径是否返回200、站内导航是否已更新。若三者都满足,旧链接访问时会直接到达新页面;若只改了站内链接而没做跳转,外部旧链接仍会落到404。
下一步:按上面的四项清单逐项补齐信息,先确认状态码与请求路径,再决定是做跳转、恢复内容还是修正链接。信息不全时不要急着批量改规则,否则容易把正常页面一并重定向。