function isBot(&$botname = ''){
/* Эта функция будет проверять, является ли посетитель роботом поисковой системы */
$bots = array(
'rambler','googlebot','aport','yahoo','msnbot','turtle','mail.ru','omsktele',
'yetibot','picsearch','sape.bot','sape_context','gigabot','snapbot','alexa.com',
'megadownload.net','askpeter.info','igde.ru','ask.com','qwartabot','yanga.co.uk',
'scoutjet','similarpages','oozbot','shrinktheweb.com','aboutusbot','followsite.com',
'dataparksearch','google-sitemaps','appEngine-google','feedfetcher-google',
'liveinternet.ru','xml-sitemaps.com','agama','metadatalabs.com','h1.hrn.ru',
'googlealert.com','seo-rus.com','yaDirectBot','yandeG','yandex',
'yandexSomething','Copyscape.com','AdsBot-Google','domaintools.com',
'Nigma.ru','bing.com','dotnetdotcom'
);
foreach($bots as $bot)
if(stripos($_SERVER['HTTP_USER_AGENT'], $bot) !== false){
$botname = $bot;
return true;
}
return false;
}
if( isBot($bname) ) {
// Перебрасываем на Москву
}
class ScanBot
{
public function isBot()
{
$down_reg = mb_strtolower($_SERVER['HTTP_USER_AGENT']);
$down_reg = str_replace(array(' '), '', $down_reg);
$find_bot_step1 = str_replace(array('yandex', 'google', 'yahoo', 'bing'), ' this_is_bot! ', $down_reg);
$find_bot_step2 = explode(' ', $find_bot_step1);
if ($find_bot_step2[1] == "this_is_bot!") {
return true;
}
return false;
}
}
class BotDetector
{
public function isBot()
{
$userAgent = $_SERVER['HTTP_USER_AGENT'];
$botPatterns = [
'/bot/i',
'/crawler/i',
'/spider/i',
'/curl/i',
'/facebookexternalhit/i',
'/twitterbot/i',
'/pingdom/i',
'/google/i',
'/yahoo/i',
'/bing/i'
// Добавьте другие паттерны для определения ботов по User-Agent
];
foreach ($botPatterns as $pattern) {
if (preg_match($pattern, $userAgent)) {
return true;
}
}
return false;
}
}