ПРОЕКТЫ 


  АРХИВ 


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]

Re: limit_req - алярм в почту


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: limit_req - алярм в почту
  • From: Илья Шипицин <chipitsine@xxxxxxxxx>
  • Date: Fri, 28 Oct 2011 09:29:47 +0600
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=qm94flLmZ/B3h3+NEy5/2+qO16XVwEwzUkWsoeucEmw=; b=QkG/HzNIH8NJfYfFCNZpV7W7B79apSJnckbPPWjsOOEJ+rs9eAx3oKpzZI3ggcqN7n W5LUE65gN30greqgmWrQw9jL/hEcg1FuMrXym2m6R/ZR2izU+x0GBcm/RVy4lwBgSKVc bruzTWJLvHR7yzTUzk0f5yWK0M4sibRALieC4=
  • In-reply-to: <4EA93092.1020306@xxxxxxxx>
  • References: <4EA93092.1020306@xxxxxxxx>

что защищаем ? толщину канала от раздачи тяжелой статики ? или тяжелую CMS-ку ?

если CMS-ка, наверняка, она в сторону пользователя отдает куку ? и,
наверняка пользователи ходят с разных браузеров ?

пишем

set  $uniq $binary_remote_addr$cookie_PHPSESSIONID$uri;
limit_req_zone  $uniq  zone=uniq:10m   rate=1r/s;

location / {
 # если уходим по proxy_pass в сторону CMS-ки, то включаем limit_req
}

как лимитировать статику - придумаете сами.

тот сценарий, который вы предлагаете - тоже можно реализовать,
выглядеть будет запутанно и не очень красиво. например, так

включаете limit_req каким-нибудь способом и пишете обработчик 503-й ошибки

error_page 503 = @notify;

location @notify {
  #смотрим $upstream_status, если там 503, значит это прилетело с
апстрима, отдаем его пользователю

  #если в $upstream_status пусто, значит сработал limit_req,
обрабатываем обычным образом - отправляем на proxy_pass

}



27 октября 2011 г. 16:21 пользователь maxim <maxim@xxxxxxxx> написал:
>  Подскажите , возможно ли реализовать следующее.
> При превышении лимита limit_req, не блочить , а  делать алярм в почту, с
> меседжем - " %ip_host limiting" .
> Ибо часто оказывается что за одним айпи который генерит большое кол-во
> запросов в единицу времени
> оказывается офис,кафе, клуб, вайфай поинт.
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.