Вроде как баг в valid_referers

Igor Sysoev is at rambler-co.ru
Thu Oct 8 16:21:28 MSD 2009


On Thu, Oct 08, 2009 at 04:02:06PM +0400, Денис wrote:

> Здравствуйте, Anton.
> 
> Вы писали 8 октября 2009 г., 15:36:45:
> 
> > С первого взгляда я бы сказал, что так и должно работать, как работает
> > сейчас. Со второго:
> 
> > http://sysoev.ru/nginx/changes.html
> 
> > 0.7.9
> 
> > Исправление: если в директивах server_name, valid_referers и map 
> > использовалась маска вида "*.domain.tld" и при этом полное имя вида 
> > "domain.tld" не было описано, то это имя попадало под маску; ошибка 
> > появилась в 0.3.18.
> 
> 
> > Денис schrieb:
> >> Здравствуйте.
> >>
> >> Для фильтрации нежелательных referer использую директивы:
> >> valid_referers
> >>               *.domain1.com
> >>               *.domain2.com
> >>               ...
> >> if ($invalid_referer != 1) {
> >>    return  444;
> >> }
> >>
> >> В версии 0.6.(не помню какой) все нормально работало. После перехода
> >> на 0.7.62 перестали работать фильтры domain.com, а www.domain.com
> >> работают, как обычно. Т.е. домены 2-го уровня при таком шаблоне не
> >> фильтруются, только 3-го.
> >> Это ошибка? Или изменился синтаксис?
> 
> Т.е. чтобы фильтровать domain.com и все его субдомены правильно
> использовать маску: *domain.com вместо *.domain.com?

Нет. Под *domain.com попадает, например, otherdomain.com.


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list