是PHP重定向seo友好


is PHP redirection seo friendly?

如果帖子不存在,我将使用此重定向到主页:

if($_GET['id'] > mysql_num_rows($total_rows)){
    header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: ".site_url."/"); 
    exit(); 
}

这是SEO友好?

在这里使用301重定向是错误的。你应该发出404 Not Found,并提供一个漂亮的错误页面,向用户解释状态(包括链接到你的主页或其他任何地方),或者类似的410 Gone,如果内容以前存在。301在这里是不正确的,可能是也可能不是SEO友好;4xx状态当然更正确。无论该状态是通过PHP还是其他方式发出的,都无关紧要。

参见http://en.wikipedia.org/wiki/Http_status_codes

是的,这应该是SEO友好。参见重定向部分

有点离题,但对于评论来说太长了。

  1. 可以删除条目,因此,实际id将始终大于条目数。
  2. 无论如何,这是计数条目的错误方法。你必须只选择数字本身,而不是表中的所有日期,选择count(*)代替。虽然你也不需要这样的号码。为什么这样一个模糊的验证"如果这个帖子普遍存在",而你可以通过请求它本身来检查这个帖子本身是否存在?更不用说你还需要里面的东西?