ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

борьба с ботами средствами ng inx


  • To: nginx-ru@xxxxxxxxx
  • Subject: борьба с ботами средствами ng inx
  • From: Roman Hlynovskiy <roman.hlynovskiy@xxxxxxxxx>
  • Date: Mon, 16 Mar 2009 19:07:31 +0600
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:content-type:content-transfer-encoding; bh=m2l733LIvlQDpKllrRYaKhi5eo3HaIexgR+pPEhkHpk=; b=pPsj+3CW9pQLR136qkIeRiT7pafJ2cz8Wq7sLZ6Wx+qiYfOgsfI+849tcHbcfqOp5g 9tYDBYUodIb4dOcn9uRFelQdYKUn0zT0pzOduBqGf4IBn576AhCyAKmX7bNKRjUwVDJG Hai61VFNu7xUMPVa24prM4fGFAv0ZHFQqNYJI=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type :content-transfer-encoding; b=Etd8AThz2fL2Pt/KnnIYcVQXxHSsLuXNy7wCC5JIhmCvvGeYbc6LJ1h28/cHPGmaZR K0hmDMX306s4tXZ3/xe2Bsmi02C43Owzsc9HxWlW4WatsdOyJOQTmq/cb2BfwDiQ8q1/ G7w573P7Y1j0fGek8kIu1UymJ5wa0gThC0QiE=

добрый день,

а у кого какой опыт есть борьбы с поисковыми ботами средствами 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


 




Copyright © Lexa Software, 1996-2009.