Чтобы обойти вложенный if и отсутствие поддержки && внутри if обычно советуют делать примерно вот так:
set $user_agent_and_referer "$http_user_agent::$referer";
if ($user_agent_and_referer ~ Macintosh.*::.*domain\.com) {
return 503;
}
Wed, 17 Nov 2010 16:11:39 +0000 письмо от Sergey Shepelev <temotor@gmail.com>:
> 2010/11/17 hg_04 <nginx-forum@nginx.us>:
> > [code]
> > if ($http_user_agent ~ Macintosh) {
> > if ($http_referer ~* "domain\.com|domain\.net") {
> > return 503;
> > }
> > }
> > [/code]
> >
>
> http://sysoev.ru/nginx/docs/http/ngx_http_rewrite_module.html#if
> syntax: if (условие) { ... }
> default: нет
> context: server, location
>
> if можно записать только внутри server или location. (То есть внутри if
> нельзя)
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru