我的网页结构类似于some_page?id = 123
有时会删除记录,但这些页面仍会被人和搜索引擎访问。一个问题是我有一个PHP脚本而没有MVC结构,所以在发现用户记录不存在之前,我必须在同一页面上查询数据库。
在这种情况下我应该退回404吗?或者什么是最佳做法?
谢谢!
答案 0 :(得分:10)
如果客户端(用户,搜索引擎等)请求的资源不存在且从不存在,则应返回404状态(“未找到”)。
但是,如果请求资源曾经存在并且此后已被永久删除,则应返回410状态(“Gone”)。 410状态明确指出资源将来永远不可用,并触发搜索引擎从索引中删除该页面。
如果资源的位置已永久更改,则使用301状态。
答案 1 :(得分:5)
404是找不到东西的时候,因为没有找到被查找的资源,这对我来说似乎完全合适。
答案 2 :(得分:1)
这取决于您是否希望将用户留在您的网站上。如果您永久地重定向到另一个页面,那么请确保标题中还有一个301,以便搜索引擎不会因为指向同一页面的许多链接而惩罚您。
404是可以的,但如果用户的浏览器不呈现任何内容,您将从该页面获得退回。
我个人认为最好的方法是为用户显示友好页面并为搜索引擎正确设置标题。
答案 3 :(得分:0)
是肯定的。只要您无法替代资本化,这将是适当的。你可以更好地为类似的资源提供服务,甚至重新指导。
答案 4 :(得分:0)
是的 - 但不要忘记向访问者提供一些额外的相关内容。仅仅因为找不到网址并不意味着应该忽略访问者。 显示自定义404页面以及可能涉及的网站的其他部分 - 可能是访问量最大的页面,...