死链是每个站都会有的问题:文章删了、产品下架、URL 改过。处理方式有三种:404、410、301。选错了,要么浪费权重,要么丢掉已有流量。
一、三种状态的适用场景
| 状态码 | 含义 | 适用 |
|---|---|---|
| 301 | 永久跳转 | 页面换地址,但内容还在 |
| 404 | 未找到 | 页面暂时不存在,可能恢复 |
| 410 | 永久删除 | 内容确定不再提供 |
选择逻辑很简单:内容还有价值就 301 到最相关的页面;内容彻底不要了就 410;不确定就 404。
注意:不要把所有死链都 301 到首页。这会让蜘蛛认为你在做"软 404",反而降低信任。
二、处理顺序
第1步:找出死链
三个来源:
- 搜索资源平台的"死链提交"报告。
- 服务器日志里的 404 请求。
- 爬虫工具跑全站内链。
第2步:分类
按两个维度分:有没有外链/流量、有没有可替代页面。
| 情况 | 处理 |
|---|---|
| 有流量 + 有替代页 | 301 到替代页 |
| 有流量 + 无替代页 | 恢复内容,或 301 到上级栏目 |
| 无流量 + 有替代页 | 301 |
| 无流量 + 无替代页 | 410 |
第3步:批量处理
少量用手工,大量用规则。Nginx 里可以批量配置:
location ~ ^/old-product/(.*)$ { return 301 /products/$1; }
第4步:提交死链
百度搜索资源平台有"死链提交"功能,把确认要删除的 URL 列表提交,能加快清理。
三、404 页面本身也要做好
死链不可避免,但 404 页面可以做得有用:
- 明确告知"页面不存在",不要自动跳转。
- 提供搜索框和主要栏目入口。
- 推荐几个热门内容。
- 返回正确的 404 状态码(不是 200)。
很多站的 404 页面返回 200,这叫"软 404",会让蜘蛛把大量无效页面当成正常页面收录。
四、怎么避免制造新死链
- 改 URL 前先做 301 映射,别先改后补。
- 删除文章前,检查有没有内链指向它。
- 产品下架时,保留下架页并推荐替代品,而不是直接删。
- 栏目合并时,把所有子页面 301 到新位置。
五、定期体检
建议每季度跑一次全站死链检测,重点看三处:导航链接、页脚链接、正文内链。这三处出问题影响最大。
检测工具用 Screaming Frog(免费版 500 条)或 Xenu,也可以用站长工具。
下架产品怎么处理最稳
产品下架不等于页面消失。推荐做法是保留页面,标注"已停产",给出替代型号和参数对比。这样既保住了原有排名和外部链接,也给来访客户一个继续了解的机会。
如果确实要删除,先看这个页面有没有外链和流量:有外链的做 301 到替代品,没外链没流量的直接 410。一刀切全删,是最容易丢流量的做法。
404 页面的三个必备元素
搜索框、主要栏目入口、三到五个热门内容。用户在 404 页面停留的时间很短,给他一条明确的出路,比写一段"抱歉"有用。
补充说明
再补一个细节:404 页面不要自动跳转首页。自动跳转会让蜘蛛把大量无效 URL 当成首页的重复版本,反而制造重复内容问题。
404 页面不要自动跳首页
自动跳转会让蜘蛛把大量无效 URL 当成首页的重复版本,反而制造重复内容问题。正确做法是返回真正的 404 状态码,页面上给出导航、搜索和热门栏目,让用户还有路可走。
处理顺序也别反:先清站内指向死链的链接,再做 301,最后提交死链。顺序反了,蜘蛛来一次还是 404,白跑。
每周从日志里导出 404 URL,按来源分组:站内链接、外部链接、用户输错。站内的修,站外的能 301 就 301,剩下的提交死链。
每周导出一次 404,站内链接修掉,站外能 301 就 301,剩下的提交死链。
常见问题
死链多久会被清理
提交后通常两到四周。不提交的话,可能要几个月。
404 和 410 对排名有区别吗
410 表示"永久删除",理论上清理更快。实际差异不大,关键是状态码要正确。
删除大量页面会不会被惩罚
正常删除不会。但一次性删几百页,索引量断崖下跌,可能触发异常评估。建议分批。
站点结构的整体优化,见站内结构优化。