多语言网站 - 如何检测机器人/蜘蛛?

时间:2013-07-17 23:55:10

标签: php

我的网站根据用户浏览器的语言更改语言。我想把所有Spinders /机器人带到英语网站(比如twitter)。什么是蜘蛛/机器人的HTTP_ACCEPT_LANGUAGE?如何检测机器人/蜘蛛以包含英文文件翻译?我已经看过制作蜘蛛/机器人列表的方法,但我发现它并不令人满意。你有更好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

您可以这样做:

function isSpider()
{
    $spiders = array("googlebot","WebCrawler","Slurp","msn", "VoilaBot", "FurlBot", "NaverBot", "MMCrawler");
    $spider_count = 0;
    foreach($spiders as $Val) {
        if (preg_match("/$Val/i", getenv("HTTP_USER_AGENT"))) {
            $spider_count++;
        }
    }
    if ($spider_count!= "0") {
        return true;
    }
        else
        {
            return false;
        }
}
if (isSpider())
{
        // Set the language to English
}

您可以在此处找到机器人名称列表:Spider names

这假设机器人设置了用户代理,这是搜索引擎抓取工具的有效假设。