503状态码的使用场景及与404的区别
Html状态码也是网站与spider进行交流的渠道之一,会告诉spider网页目前的状态,spider再来决定下一步该怎么做——抓or不抓or下次再来看看。对于200状态码大家已经很熟了,那么我们来介绍几种常见的失效网页使用的状态码:
【404】404返回码的含义是“NOT FOUND”,百度会认为网页已经失效,那么通常会从搜索结果中删除,并且短期内spider再次发现这条url也不会抓取。
【503】503返回码的含义是“Service Unavailable”,百度会认为该网页临时不可访问,通常网站临时关闭,带宽有限等会产生这种情况。对于网页返回503,百度spider不会把这条url直接删除,短期内会再访问。届时如果网页已恢复,则正常抓取;如果继续返回503,短期内还会反复访问几次。但是如果网页长期返回503,那么这个url仍会被百度认为是失效链接,从搜索结果中删除。
【301】301返回码的含义是“Moved Permanently”,百度会认为网页当前跳转至新url。当遇到站点迁移,域名更换、站点改版的情况时,推荐使用301返回码,尽量减少改版带来的流量损失。虽然百度spider现在对301跳转的响应周期较长,但我们还是推荐大家这么做。
一些网站把未建好的页面放到线上,并且这些页面在被百度抓取的时候返回码是404,于是页面被百度抓取后会被当成死链直接删除。但是这个页面在第二天或者过几天就会建好,并上线到网站内展现出来,但是由于之前已经被百度当做死链删除,所以要再次等这些链接被发现,然后抓取才能展现,这样的操作最终会导致一些页面在一段时间内不会在百度出现。比如某个大型门户网站爆出大量新闻时效性很强的专题未被百度及时收录的问题,经检查验证后发现就是因为页面未建成就放置在线上,并返回404状态码,被百度当成死链删除,造成收录和流量损失。
对于这样的问题,建议网站使用503返回码,这样百度的抓取器接到503返回码后,会在隔一段时间再去访问这个地址,在您的页面建好上线后,就又能被重新抓取,保证页面及时被抓取和索引,避免未建好的内容设为404后带来不必要的收录和流量损失。
其它建议和总结:
1、如果百度spider对您的站点抓取压力过大,请尽量不要使用404,同样建议返回503。这样百度spider会过段时间再来尝试抓取这个链接,如果那个时间站点空闲,那它就会被成功抓取了
2、如果站点临时关闭或者页面暂未建好上线,当网页不能打开时以及没有建好时,不要立即返回404,建议使用503状态。503可以告知百度spider该页面临时不可访问,请过段时间再重试。