当网站停机维护时,要发送的正确HTTP状态代码是什么?

时间:2010-05-07 06:21:37

标签: php http http-response-codes

是否有HTTP状态代码告诉Google(和其他人)消失,稍后再次为我索引

基本上,从语义上告诉客户网站是否需要维护?

我考虑过的是

304 => Not modified
307 => Temporary redirect
410 => Gone
503 => Service Unavailable

我倾向于最后一个,但只是好奇哪个正确的选择。

4 个答案:

答案 0 :(得分:99)

HTTP 503 - Service Unavailable是最合适的。

  

由于服务器临时过载或维护,Web服务器(运行Web站点)当前无法处理HTTP请求。这意味着这是一个暂时的条件,经过一段时间的推迟后会得到缓解。

Google网站站长中心论坛上的这篇文章也很重要:

  

是 - 503是“我们已关闭”的正确服务器响应。如果您用普通的HTML页面替换“我们已关闭”并提供200,则很可能会被Google编入索引。

     

如果你给Googlebot一个503,它就会消失,稍后再回来,而不会为你提供的内容编制索引。


<强>更新

至于php实现,您可能有兴趣查看以下文章:

另请注意retry-after标题,您可以在其中指定应重新尝试其他请求的秒数。

答案 1 :(得分:7)

来自http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=40132

503(服务不可用)服务器当前不可用(因为它过载或停机以进行维护)。一般来说,这是一个临时状态。

答案 2 :(得分:3)

我认为503是最合适的,因为5xx-group一般用于服务器错误。

答案 3 :(得分:3)

503服务不可用