编辑把过期文章删掉,服务器配置成所有 404 都跳首页,用户点进来一脸茫然,蜘蛛也把这些地址当成软 404。

这类报错背后常见的原因有几处,逐个排除就行。全站 404 统一跳首页,属于典型的软 404。还有一种是跳转后状态码是 200,蜘蛛无法判断页面已删除。

另外,用户在首页找不到原内容,直接退出。

先确认删除页的实际返回

curl -sI https://www.example.com/old-post/ | head -3

恢复真实的 404 状态

error_page 404 /404.html;

给用户提供相关推荐入口

curl -s https://www.example.com/404.html | head -5

这类改动我都写进变更记录,过两周再出问题时能对上号。

我习惯把每一步的执行时间和结果记在一边,后面复盘省事。

改之前我把相关日志按时间截了一段存着,事后对时间线用得上。

改完先别撤,确认这几项。删除页返回 404 并有明确的提示页,软 404 报告里的条目减少。

这里还有个坑。跳到首页既不讨好用户也不讨好蜘蛛,想保留流量应该做相关推荐或 301 到主题相近的新页面。监控比日志更早给出信号,事后回看经常能提前半小时发现异常。

作者 9823189