Re: борьба с ботами средствами nginx

Nikolay Grebnev nick at algen.spb.ru
Mon Mar 16 16:50:29 MSK 2009


Мне кажется что это некорректная постановка задачи.
Роботы - это кормильцы. Резать их неправильно.
Вам надо решать задачу с другой стороны - надо чтобы клиент имел некую
планку по загрузке системы, и в ней уже мог извращаться как ему угодно. Если
совсем никак то проще отказаться от клиента. Это и для него лучше.
Уверен, что он заплатил за раскрутку( чтобы пришли роботы) во много десятков
раз больше, чем за Ваш хостинг. И если Вы будете его резать, это неправильно

2009/3/16 Roman Hlynovskiy <roman.hlynovskiy at gmail.com>

> добрый день,
>
> а у кого какой опыт есть борьбы с поисковыми ботами средствами nginx?
>
> сегодня столкнулись с интересной проблемой - дурной клиент то-ли купил
> сервис по seo-оптимизации, то-ли сам где-то научился, но его ресурс
> обступили вкруговую поисковые боты.
> одновременно 10-15 разных поисковых ботов начали активно индексировать
> ресурс. все-бы ничего, но ресурс поднят на базе одного очень дурного
> CMS разработчики которого видимо не в курсе что существуют понятия
> индексов в БД.
> в итоге получился небольшой DOS. сервер выдержал, но 'осадок' остался,
> в виде очень нехороших iowait'ов.
>
> хотел-бы узнать кто-как решает подобные наплывы ботов у себя?
> закрывать полностью ip-адреса ботов тоже не вариант, т.к. речь идет о
> шаред хостинге.
>
> соответственно у меня возникло 2 различные идеи воплощения этой задачи;
>
> 1) разрешить только одному боту в одну единицу времени получать свой
> честный 200, всем остальным - 503
> 2) разрешить не более одного коннекта с одного ip-адреса при условии
> что user_agent соответствует некому набору бот-шаблонов.
>
> попытался реализовать второй вариант через limit_conn следующим образом:
>
> http {
>    limit_zone   bots  $binary_remote_addr  16m;
>
>   . . .
>
>   server {
>
>    if ($http_user_agent ~* "StackRambler|Yandex") {
>    limit_conn bots 1;
>   }
>
>
>  }
>
> }
>
> на практике получил облом, т.к. limit_conn не может быть внутри if-а.
> какие варианты тут могуть быть?
>
> реализовывал-ли кто-нибудь что-нибудь подобное первому варианту?
> у меня вообще не приходят мысли как может выглядеть подобная конфигурация.
>
>
> --
> ...WBR, Roman Hlynovskiy
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20090316/93e74576/attachment.html>


More information about the nginx-ru mailing list