Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Отрицание в valid_referers
- To: nginx-ru@xxxxxxxxx
- Subject: Re: Отрицание в valid_referers
- From: Валентин Бартенев <ne@xxxxxxxx>
- Date: Mon, 9 Jul 2012 22:45:03 +0400
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=vbart.ru; s=mail; h=Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:In-Reply-To:References:Date:Subject:To:From; bh=4McD7gUqUTLso+9ZsnRqui7Nsjg/YZ5IuO1UD2W48d4=; b=clJPTgpPjLm67rm65yy9UHJYYJDZ8LdFrXMNG5n3RUVAT/180rTwwSaxOPeJoNMg/El6lEpkz7z97b7sLqR+hSeT80oqisqTXVHF5MDQttwrEPzSOLSC2taZcyU8hq8CvmsjZqQjLzHdrbXnzSUPQ769KKOb2iNyiKyFKlZ3rJvVJc5NjuWRrEvQAwe35PJ3j4NHOXk5wvrbMiE3uEOm9owCVJWolZoKqomk5zphnSiwi9Wz1MCsoVL4+0tKFV7ri9p7COwLD7e753wdUaSUeAGd2/tnGyzxZ+D7MPNGneq6Tf4rKrLc0oruLm24k/dto7xCrm5uuiM67TcyYLWgvw==;
- In-reply-to: <4FFB1C86.50309@itcraft.org>
- References: <4FFB0BF2.2090209@itcraft.org> <201207092143.09146.ne@vbart.ru> <4FFB1C86.50309@itcraft.org>
On Monday 09 July 2012 22:01:42 Sergey Kobzar wrote:
> 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....
>
У вас вообще она не правильная. Должно быть как-то так: ^((?!domain)[^/])*/
--
Валентин Бартенев
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|