 Senior Member Клоакинг или прячемся от Гугля. Все мы знаем о клоакинге. Если кто не знает (в чем я сомневаюсь),- гугл вам в помощь (введите в поиск "что такое клоакинг"). Ставить редиректы после того, как дор залезет в топ я не люблю, потому что можно немного прозевать и траф пойдет мимо, а с конвертом 1:20 - 1:30 такое расточительство непозволительно Поэтому я и использую клоакинг. Самое просто и наиболее эффективное из-за своей простоты - клоакинг по юзерагенту. Все оставляют след, а мы с помощью него будем отделять мух от котлет. Или котлет от мух. Ну, вообщем, вы меня поняли  Самое ценное здесь - это список юзерагентов к фильтрации. Обычно выделяют бесполезных негодяев, которые нагоняют траффик (краулеры левые, начинающие поисковички) и боты целевых поисковиков. Кто как делает - кто первым не отдает ничего, кто отдает контент и первой и второй категории ботов. Мой случай - второй. Итак. Немного PHP-кода:
PHP код: // массив юзерагентов
$user_agent_to_filter = array( '#Ask\s*Jeeves#i', '#HP\s*Web\s*PrintSmart#i', '#HTTrack#i', '#IDBot#i', '#Indy\s*Library#',
'#ListChecker#i', '#MSIECrawler#i', '#NetCache#i', '#Nutch#i', '#RPT-HTTPClient#i',
'#rulinki\.ru#i', '#Twiceler#i', '#WebAlta#i', '#Webster\s*Pro#i','#www\.cys\.ru#i',
'#Wysigot#i', '#Yahoo!\s*Slurp#i', '#Yeti#i', '#Accoona#i', '#CazoodleBot#i',
'#CFNetwork#i', '#ConveraCrawler#i','#DISCo#i', '#Download\s*Master#i', '#FAST\s*MetaWeb\s*Crawler#i',
'#Flexum\s*spider#i', '#Gigabot#i', '#HTMLParser#i', '#ia_archiver#i', '#ichiro#i',
'#IRLbot#i', '#Java#i', '#km\.ru\s*bot#i', '#kmSearchBot#i', '#libwww-perl#i',
'#Lupa\.ru#i', '#LWP::Simple#i', '#lwp-trivial#i', '#Missigua#i', '#MJ12bot#i',
'#Mozilla\/5\.0#i', '#msnbot#i', '#msnbot-media#i', '#Offline\s*Explorer#i', '#OmniExplorer_Bot#i',
'#PEAR#i', '#psbot#i', '#Python#i', '#rulinki\.ru#i', '#SMILE#i',
'#Speedy#i', '#Teleport\s*Pro#i', '#TurtleScanner#i', '#User-Agent#i', '#voyager#i',
'#Webalta#i', '#WebCopier#i', '#WebData#i', '#WebZIP#i', '#Wget#i',
'#Yandex#i', '#Yanga#i', '#Yeti#i','#msnbot#i',
'#spider#i', '#yahoo#i', '#jeeves#i' ,'#google#i' ,'#altavista#i',
'#scooter#i' ,'#av\s*fetch#i' ,'#asterias#i' ,'#spiderthread revision#i' ,'#sqworm#i',
'#ask#i' ,'#lycos.spider#i' ,'#infoseek sidewinder#i' ,'#ultraseek#i' ,'#polybot#i',
'#webcrawler#i', '#robozill#i', '#gulliver#i', '#architextspider#i', '#yahoo!\s*slurp#i',
'#charlotte#i', '#ngb#i' ) ;
if ( !empty( $_SERVER['HTTP_USER_AGENT'] ) && ( FALSE !== strpos( preg_replace( $user_agent_to_filter, '-NO-WAY-', $_SERVER['HTTP_USER_AGENT'] ), '-NO-WAY-' ) ) )
echo 'держи барашку :)' ;
else
echo 'redirect...' ;
Все просто, все понятно. Но это не все. Можно устроить дополнительную проверку для гуглобота для надежности. Если у вас UNIX-сервер, то следует попробовать вычислить гуглобота так:
PHP код: if( FALSE !== strpos( gethostbyaddr($_SERVER['REMOTE_ADDR']), 'google'))
{
// это бот
}
else
{
// это не бот.
}
Не забывайте анализировать свои логи и вычислять надоедливых гадов  UPD: Вот несколько диапазонов поисковых ботов. Также не будет лишним проверить.
PHP код: $stop_ips_masks = array(
"66\.249\.[6-9][0-9]\.[0-9]+", // Google NetRange: 66.249.64.0 - 66.249.95.255
"74\.125\.[0-9]+\.[0-9]+", // Google NetRange: 74.125.0.0 - 74.125.255.255
"65\.5[2-5]\.[0-9]+\.[0-9]+", // MSN NetRange: 65.52.0.0 - 65.55.255.255,
"74\.6\.[0-9]+\.[0-9]+", // Yahoo NetRange: 74.6.0.0 - 74.6.255.255
"67\.195\.[0-9]+\.[0-9]+", // Yahoo#2 NetRange: 67.195.0.0 - 67.195.255.255
"72\.30\.[0-9]+\.[0-9]+", // Yahoo#3 NetRange: 72.30.0.0 - 72.30.255.255
"38\.[0-9]+\.[0-9]+\.[0-9]+", // Cuill: NetRange: 38.0.0.0 - 38.255.255.255
"93\.172\.94\.227", // MacFinder
"212\.100\.250\.218", // Wells Search II
"71\.165\.223\.134", // Indy Library
"70\.91\.180\.25",
"65\.93\.62\.242",
"74\.193\.246\.129",
"213\.144\.15\.38",
"195\.92\.229\.2",
"70\.50\.189\.191",
"218\.28\.88\.99",
"165\.160\.2\.20",
"89\.122\.224\.230",
"66\.230\.175\.124",
"218\.18\.174\.27",
"65\.33\.87\.94",
"67\.210\.111\.241",
"81\.135\.175\.70",
"64\.69\.34\.134",
"89\.149\.253\.169"
);
foreach ( $stop_ips_masks as $k=>$v )
{
if ( preg_match( '#^'.$v.'$#', $_SERVER['REMOTE_ADDR'])) {
echo 'bot detected' ;
}
}
Вот и все, так что базовое понятие о клоакинге у вас теперь есть. Последний раз редактировалось grazer; 01.03.2010 в 18:40. Причина: оптимизация -
Senior Member -
Member   Сообщение от 24110  Кстати, для неверующих и для тех, кто еще не знает Дор с точно таким редиком с клоакингом живет в индексе уже на протяжении 4 месяцев, всплывая в топе примерно каждые 2 недели на 4-5 дней. Ой как приятно  Честное слово, удивлен без меры. Сколько раз не пробовал делать доры с клоакингом, часто просто не попадали в индекс даже, хотя другие хорошо индексируются. У меня такое впечатление, что гугл через раз палит клоакинг.
-
Senior Member   Сообщение от Donar  Честное слово, удивлен без меры. Сколько раз не пробовал делать доры с клоакингом, часто просто не попадали в индекс даже, хотя другие хорошо индексируются. У меня такое впечатление, что гугл через раз палит клоакинг. Клоакинг же не только по юзерагенту существует. Тут нужен комплексный подход - по рефереру, по юзерагенту, по IP (зная IP подсетей поисковых ботов).
-
 Дор , который живет 4 месяца в индексе, у него какой контент и диз... уникальный? Может в этом причина? -
Senior Member  Диза на доре нет. Контент НЕ уникальный (еще доров *цать с таким же контентом). Тут еще от траста донора многое зависит, дело не только в редике, конечно же. -
Senior Member  а то что гуглоботы заходят под юзерагентом "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.7) Gecko/20060909 Firefox/1.5.0.7" и с реферером "__JC_UNKNOWN_VAR_cloak.daily-2009-08-19-62-00.vars.referer__" вас не смущает в схеме клоакинга? Полезно: firefox addons. Последний раз редактировалось grazer; 10.05.2010 в 17:49. -
Senior Member  нет, не смущает -
Senior Member  если уж клоачить, то надо банить все диапазоны айпи которые относятся к гуглу, а ето ой как непросто. вариант смотреть хуисы, либо иметь сервис который смотрит к какой организации относится данный айпи. Один известный ВМ так делал. Жило прилично долго. вот пример http://whois.domaintools.com/74.125.45.100 -
Senior Member  Вы, вообще, читаете статью или нет?
PHP код: if( FALSE !== strpos( gethostbyaddr($_SERVER['REMOTE_ADDR']), 'google')) { // это бот } else { // это не бот. }
-
| Похожие темы | Рейтинг | Раздел | Ответов | Последний пост | | | Дайджест блогосферы | 0 | 08.03.2010 14:47 | | | Софт, скрипты, сервисы | 5 | 12.09.2009 23:46 | Сейчас на сайте: 9 пользователей и 129 гостей | |