重定向搜索引擎?

问题描述

| 此代码可用于重定向搜索引擎吗?
<?PHP
function check_if_spider()
{
    $spiders    = array(
                    \'Googlebot\',\'Yammybot\',\'Openbot\',\'Yahoo\',\'Slurp\',\'msnbot\',\'ia_archiver\',\'Lycos\',\'Scooter\',\'AltaVista\',\'Teoma\',\'Gigabot\',\'Googlebot-Mobile\'
                );
    foreach ($spiders as $spider)
    {
        if (eregi($spider,$_SERVER[\'HTTP_USER_AGENT\']))
        {
            return TRUE;
        }
    }
    return FALSE;
}

if (check_if_spider() == 1){
    header (\'HTTP/1.1 301 Moved Permanently\');
    header (\'Location: http://www.site.com\');
    exit();
}
?>
    

解决方法

是的,会的。但是上面的函数不是最佳选择(它使用了不建议使用的eregi()而不是简单的字符串函数strpos())。还要注意:蜘蛛机器人在显示它们的内容与用户浏览器的内容不同时不喜欢这种情况。     ,这是我的想法: 不推荐使用ergei:从PHP手册: 自PHP 5.3.0起已弃用此功能。强烈建议不要使用此功能。 您的函数
check_if_spider()
返回TRUE / FALSE,但是您正在检查1个外部代码,不是很直观易读的代码。 用
robots.txt
或通过.htaccess / config中的mod_rewrite规则来处理搜索引擎机器人要好得多,而不是在PHP代码内部。