Re: Отрицание в valid_referers

Sergey Kobzar sergey.kobzar на itcraft.org
Пн Июл 9 18:01:42 UTC 2012


On 07/09/12 20:43, Валентин Бартенев wrote:
> On Monday 09 July 2012 20:50:58 Sergey Kobzar wrote:
>> Необходимо сделать отрицание строки в valid_referers. Сейчас
>> valid_referers выглядит так:
>>
>> valid_referers none blocked server_names ~(?!domain);
>>
>>
>> Но если реферером выступает домен domain-test.com? то блок
>>
>> if ($invalid_referer) {
>>           rewrite ^ /block.php;
>> }
>>
>> Не срабатывает.
>>
>> Что не так?
>>
>
> domain-test.com присутствует в server_names или совпадает с одним из
> регулярных выражений?

Я неполно описал задание:

Есть домен domain.com. Необходимо закрыть доступ, где реферером является 
domain<something>.tld или <something>domain.tld (tld может быть отличным 
от исходного). В server_names присутствует *.domain.com

Т.е. изначально я предполагал регекспом выделить запросы, где не 
встречается domain в имени сервера...

Надо бы его переписать, а то получается я полностью строку Referer 
проверяю, а не только server name....



>
> --
> Валентин Бартенев
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



Подробная информация о списке рассылки nginx-ru