Php GSiteCrawler服务器测试显示错误?

Php GSiteCrawler服务器测试显示错误?,php,redirect,seo,Php,Redirect,Seo,在这段代码中,我给重定向$searchLink $urlCity = strtolower($_COOKIE['UserCityName']); $searchLink = '/properties-in-'.$urlCity.'.php'; if($_SERVER['REQUEST_URI'] != $searchLink) { Header("HTTP/1.1 301 Moved Permanently" ); Header("Location: http://".$

在这段代码中,我给重定向$searchLink

$urlCity = strtolower($_COOKIE['UserCityName']);
 $searchLink = '/properties-in-'.$urlCity.'.php'; 
 if($_SERVER['REQUEST_URI'] != $searchLink)
 {
    Header("HTTP/1.1 301 Moved Permanently" );
    Header("Location: http://".$_SERVER['HTTP_HOST'].$searchLink);   
 }
但在GSiteCrawler服务器测试中显示错误

'http://legacy.com/properties-in-.php' 
Result code: 200 (OK / OK)

'http://legacy.com/properties-in-chennai.php'  like this it should come

我怀疑代码是否真的发送了有效的重定向。如果你没有在这里发布更多的代码,那就不会了。您所做的只是输出一条路径,而不是更多。特别是因为您无条件退出()脚本…只有我用于重定向的代码说:不,这不是有效的重定向。好的,如果没有调试输出,看起来会更好:-)。现在让我们看看robots结果:''看起来像一个很好的url,只是其中没有位置。原因很简单,机器人连接时没有发送COOKIE。饼干应该从哪里来?机器人不处理饼干。什么是虫子,机器人不发送饼干?这当然不是一个错误。他们为什么要处理饼干?该cookie应包含哪些内容?你的情况是哪个城市?这些内容应该来自哪里?我要说的是,这个测试对于在你的网站上爬行的机器人来说毫无意义。您不做任何形式的错误处理,而是依赖于请求提供的任何内容。这是个糟糕的设计。在使用cookies值之前,您必须检查它所包含的内容是否符合您的期望!对于机器人:检查该值是否为空(根本没有指定cookie)!