很多人做 SEO 只盯着内容和外链,从来不看状态码。我跟你说,状态码这东西看着枯燥,实际上它是你和搜索引擎之间的暗号,用错了,你辛苦做的内容它可能压根收不到。
我最早做站的时候,把已经不用的页面直接删了,服务器返回 404。我当时觉得挺正常啊,页面都不要了,返回个找不到不是很合理吗。后来发现百度后台一堆抓取异常,权重也掉了。我才明白,404 本身不是错,错的是我直接删。那些页面是有外链指向的,你啪一下删掉,外链的价值就悬在空中落地了。正确做法是先把它 301 到内容最接近的页面,让权重有地方去。
然后说 301。301 是永久跳转,这个大家都懂。但我见过太多人把 301 用得跟 302 一样随便,今天指这儿明天指那儿。跳转目标改来改去,搜索引擎会迷糊,它不知道该信哪个。你要想清楚,301 是个承诺,你承诺了旧地址永久指向新地址,就得坚持住。真要再改,那也得是深思熟虑之后的事。
503 这个状态码,用好了是神器。网站维护的时候,你别直接关站让用户看到一堆报错。返回 503 加上 Retry-After 头,告诉搜索引擎我暂时不可用,过几小时再来。它会等你的,不会把你页面从索引里踢出去。这个跟 404 有本质区别,404 是永久没了,503 是我还在,只是暂时接待不了。你要是服务器扛不住流量,与其让页面超时返回一堆错误,不如主动返回 503 保护自己。
还有一个坑,很多人做 URL 规范化的时候,把带 www 和不带 www 的地址都返回 200。这就等于你一个页面有两个入口,搜索引擎不知道该收哪个,权重被劈成两半。这种情况必须挑一个做 301 跳到另一个。
我现在的习惯是,新站上线第一件事就是把状态码规则理清楚。哪些是永久跳转,哪些是临时,哪些该返 404 而不是 200。这几个规则定死了,后面省一半的心。真的,状态码这点事,早搞明白早省事。
—— 来自 挖的客 - 优秀网站分类目录 的分享