[FreeWare] Свежая база ботов для Fantomas Shadowmaker v2

Статус
В этой теме нельзя размещать новые ответы.
Как я понял тут скрипт клоакина/редиректа по рефу.
А нужен который будет юзать базу айпишников и я тоже думаю ресурсы нужны для этого хорошие.
Несколько лет назад немецкий сайт bmw как раз и получил пенальти от гугла за Fantomas Shadowmaker.
Попробую поискать скрипт клоакинга, раньше поподались на глаза.
 
Как я понял тут скрипт клоакина/редиректа по рефу.
А нужен который будет юзать базу айпишников и я тоже думаю ресурсы нужны для этого хорошие.
Несколько лет назад немецкий сайт bmw как раз и получил пенальти от гугла за Fantomas Shadowmaker.
Попробую поискать скрипт клоакинга, раньше поподались на глаза.

Опиши что именно от скрипта надо, так как у меня есть подобное чудо мною писаное (+собраная база ботов и руками провереная по гео-хуизам, правда только 3 основных поисковиков), но чуть для инных целей...
 
Если в двух словах то скрипт должен свиряться с базой и если айпи в базе есть подставлять боту опр страницу или не редиректить бота, если айпи нет то подставлять другую страницу или редиректить.
Но как мне кажеться база должна постоянно обновляться, чтобы толк от неё был.
 
Если в двух словах то скрипт должен свиряться с базой и если айпи в базе есть подставлять боту опр страницу или не редиректить бота, если айпи нет то подставлять другую страницу или редиректить.
Но как мне кажеться база должна постоянно обновляться, чтобы толк от неё был.
Ну если простенький скриптец то нет проблем
PHP:
<?php
Error_Reporting(E_ALL & ~E_NOTICE);
define('IPFILE', 'botip.txt');
define('UAFILE', 'botua.txt');
function get_client_ip_address () {   
	if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown")) $ip = getenv("HTTP_CLIENT_IP");   
	elseif (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) $ip = getenv("HTTP_X_FORWARDED_FOR");   
	elseif (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) $ip = getenv("REMOTE_ADDR");   
	elseif (!emptyempty($_SERVER['REMOTE_ADDR']) && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) $ip = $_SERVER['REMOTE_ADDR'];   
	else $ip = "127.0.0.1";   
	return($ip);   
}
function isCrawler ($ip, $ua) {
		$crawler_ip = file(IPFILE);// bots 'ІР Address' file
		$crawler_ua = file(UAFILE);// bots 'User Agent' file
		$ua = strtolower(urldecode($ua));
		$user_ip = trim($ip);
		//Check IP
		foreach ($crawler_ip as $num_ip => $value_ip) {
			if (stristr($user_ip, trim($value_ip))) return true;
		}
		//Check User Agent
		foreach ($crawler_ua as $num_ua => $value_ua) {
			if (stristr($ua, trim($value_ua))) return true;
		}
		// Default return value
		return false;
	}
$use_ip = get_client_ip_address();
$use_ua = (!empty($_SERVER['HTTP_USER_AGENT'])) ? urlencode($_SERVER['HTTP_USER_AGENT']) : 'unknown';
if(isCrawler($use_ip,$use_ua)) {$crawler = true;} else {$crawler = false;}
if($crawler === true) { 
	//тут выводим то что для бота
	echo 'You BOT!!!';
} else { 
	//тут выводим то что для юзера
	echo 'User';
}
die;
?>
Файл с ип адресами ботов botip.txt должен иметь вид
111.12.12.23
111.13.12.23
...
но скрипт проверяет вхождение только Х.Х.Х, т.е. всю подсеть режет если нвходит вхождение. Файл с юзерагентами botua.txt заполняйте в простом виде:
bot
craw
googl
msn
surpl
yahoo
...
Так вроде все...
 
Так как база достаточно тяжелая, то использовать ее на дорах просто глупо. Клоакинг по этой базе даст бан такой же, как и по простому определению юзерагента и проверки реверс ип. Как правильно заметили - база должна постоянно обновляться + не забываем что Гугл использует индусов для ручной проверки сайтов...
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху