网站跑久了,一定会有内容被删、地址被改。这些链接如果没人管,用户点进去看到一片空白,搜索引擎也会慢慢降低对你站的评价。
先分清三种状态
404 表示这个地址不存在,410 表示确实删了、别再来了,301 表示永久搬到了新地址。用错的情况非常常见:把删掉的页面统统重定向到首页,看着聪明,实际等于告诉搜索引擎"这些页面都没了,随便给个替代吧"。
只有内容真的搬到了相关的新地址,才该用 301。旧链接一律跳首页,是最容易被判成软 404 的做法。
404 页面该写什么
不是所有 404 都该冷冰冰一句"页面不存在"。合格的 404 有三样东西:一句人话解释、几条可能的去处(热门内容、分类入口、搜索框)、一个联系方式。
顺便说一句,404 页面要返回真正的 404 状态码。有的站为了"照顾体验",返回 200 再把错误内容显示出来,这叫软 404,会把搜索引擎绕晕。
怎么把死链找出来
用工具扫一遍全站,比人工点快得多。也可以看服务器日志,哪些地址反复出现 404——访问量大的死链,往往是被外部链接带过来的。
发现之后分三类处理:有对应新页面的做 301;确实没内容的,让它老老实实返回 404;重要但暂时下线的,给一个说明页。
重定向别堆成链
A 跳到 B,B 又跳到 C,链条越长权重损耗越大,用户等待也越久。定期清一次,把多级跳转改成一步到位。
rewrite ^/old/(.*)$ /new/$1 permanent;这种规则写多了容易互相影响,改完一定要用无痕窗口逐条验。规则是有顺序的,写在前面会先命中。
建议每季度扫一次死链,十几分钟的事。死链不会自己变好,只会越积越多。