ПРОЕКТЫ 


  АРХИВ 


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: Фильтрация по R eferer



11.06.2009 21:04, Денис wrote:
Здравствуйте, Alex.

Вы писали 11 июня 2009 г., 20:38:13:

11.06.2009 17:46, Денис Бабичев wrote:
[...]
Есть директива valid_referers, но она работает наоборот. Т.е.
блокирует доступ к сайту, все кроме заданных.
А мне нужно блокировать только заданные Referer.
Как это лучше организовать?

                 set $tmp "1";
                 if ($invalid_referer){
                     set $tmp "";
                 }
                 if ($tmp){  # пустая строка ~ false
                     return 403;
                 }

Не пойму в чем суть?
Заводить еще одну переменную, чтобы потом её проверить.

Суть - сделать переменную $tmp, а фактически - $valid_referer, инвертировав значение $invalid_referer. not в if в nginx пока не присутсвует, если верить http://sysoev.ru/nginx/docs/http/ngx_http_rewrite_module.html#if, поэтому приходится вот так изголяться для того, чтобы внутри if($tmp) были действия именно для тех запросов, которые пришли с valid_referers.



 




Copyright © Lexa Software, 1996-2009.