asp.net 返回HTTP 410而不是404可以吗?

b5lpy0ml  于 2023-08-08  发布在  .NET
关注(0)|答案(2)|浏览(135)

http code 410(gone)vs 404(not found)是什么意思我想知道如果一个页面从未存在过(用户输入的URI错误),返回410而不是404可以吗?我知道404是大多数网站在这种情况下会返回的。返回410有什么坏处吗?

fcipmucu

fcipmucu1#

为了直接回答您的问题,在这种情况下返回410 status code而不是404 status code应该没有“危害”。
但是,为一个根本不存在的资源返回410是一种误导,不应该这样做。
状态代码的全部意义在于尽可能清楚地说明接收它的用户为什么成功/失败。通过发送410,用户可能会认为此资源曾经存在,并可能尝试其他URL来访问它。通过在此上下文中使用404,用户将知道此资源从一开始就不存在。

nzk0hqpo

nzk0hqpo2#

410状态代码意味着您故意删除了一个页面,并且您不希望它恢复。这会告诉搜索引擎迅速忘记该页面,不要再费心去寻找它。404状态码表示您找不到网页,但可能稍后会回来。搜索引擎将继续检查该页面,看看它是否发生了变化。
如果您使用410状态代码来创建一个从未存在过的页面,您的服务器必须能够处理该代码,并且您必须确保将来不会创建该页面。否则,您可能会混淆搜索引擎和用户,他们可能想知道该页面发生了什么。404状态码更适合那些从来没有也永远不会出现的页面。
https://mysagaventure.com/404-vs-410-status-errors-whats-the-difference-and-how-to-fix-them/

相关问题