我有一个动态审查系统到位,显示每页30个评论,并在达到30个评论,它是分页。所以我有这样的页面
/评论/城市/波士顿/ /评论/城市/波士顿/页/2/ /评论/城市/波士顿/页/3/ 以此类推
不幸的是,Google似乎是通过似乎是推理来索引页面的,例如
/评论/城市/波士顿/页/65/
这页绝对不存在,我想通知谷歌这一点。目前,它显示一个审查页面,但没有审阅。我无法想象这是非常好的搜索引擎优化。因此,如果首先检查MySQL查询的结果#,如果没有结果,则返回404并将其转发到主页或其他页面,那么我要做的是。
目前,这就是我所拥有的。
if (!$validRevQuery) {
header("HTTP/1.0 404 Not Found");
header("Location: /index.php");
exit;
}我在正确的轨道上吗?
发布于 2010-10-13 14:57:15
您需要输出404状态,同时显示响应体(=错误页)。
if (!$validRevQuery) {
http_response_code(404);
// output full HTML right here, like include '404.html'; or whatever
exit;
}注意,您不能在这里使用重定向。A重定向是一种状态代码,就像404是。你不能有两个状态代码。
发布于 2010-10-13 14:56:54
您不能同时发送404状态代码和重定向(通常是3xx状态码)。您只能执行其中一个操作:要么发送404状态代码和错误文档,要么通过重定向进行响应。
发布于 2010-10-13 16:15:38
正如Pekka所建议的,最好的选择是执行404状态,然后将404页代码放在之后。这是错误的做法SEO,如果你只是301 (重定向)的网页,因为然后搜索引擎将继续访问该网页,以看看是否重定向仍然存在。
https://stackoverflow.com/questions/3925008
复制相似问题