有没有理由使用HTTP 410 GONE状态代码?

时间:2016-10-04 14:55:01

标签: http

从您的网站永久删除网页时,设置" 410 GONE"是否有任何实际好处? URL的HTTP响应(而不是404)?

2 个答案:

答案 0 :(得分:4)

是的,410 Gone HTTP状态代码表示请求的资源过去曾一度可用,但现在已经停用或已过时。

404 Not Found HTTP状态代码可能意味着网站未正确更新,以至于缺少通常在那里定义的文件。它也可能意味着请求客户端引用了一个从未存在过的资源,而且可能永远不会存在。

410 Gone状态可能会有更直接的SEO影响,因为它告诉搜索引擎故意删除了丢失的资源。这应该会加速对该页面的未来搜索引用的减少,而不是404 Not Found状态。

答案 1 :(得分:2)

我可以想象,如果您有一个公共 API,并且在像 v4 之类的发布后最终禁用了长期弃用的 v1,您可以使用此状态代码使其对 API 的使用者显而易见。但话又说回来,有人可能会争辩说 301 也适用于这种情况。这也取决于它的不同之处,以及是否有实际替代品,或者它是否真的消失了。

“410 响应的主要目的是通过通知接收者资源有意不可用以及服务器所有者希望删除指向该资源的远程链接来协助 Web 维护任务。这种事件对于有限的情况很常见-时间、促销服务和属于不再在服务器站点工作的个人的资源。没有必要将所有永久不可用的资源标记为“消失”或保留标记任何时间长度——这由自行决定服务器所有者的。” https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html