站点停机进行维护时发送的正确HTTP状态代码是什么?


87

是否有HTTP状态代码告诉Google(和其他用户)离开,以后再给我编索引

基本上,有人从语义上告诉客户该站点已关闭维护吗?

我考虑过的是

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

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

Answers:


113

HTTP 503-服务不可用将是最合适的。

由于服务器的暂时超载或维护,Web服务器(正在运行网站)当前无法处理HTTP请求。这意味着这是一个暂时性状况,经过一段时间的延迟后会缓解。

Google网站站长中心论坛上的这篇帖子也与此相关:

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

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


更新:

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

还要注意retry-after标题,您可以在其中指定在几秒钟后应重新尝试另一个请求。


看起来这不再适用于http2-当我向维护页面发送503时,Chrome显示ERR_HTTP2_PROTOCOL_ERROR。如果我发送200,一切都很好
Xosofox



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.