Вложенныедирективыилиобъединениеусловий

Roxis roxis at list.ru
Wed Apr 16 16:47:55 MSD 2008


On Wednesday 16 April 2008, Larry Gingras wrote:
> Переписываю очень сложную и навороченную конфигурацию apache под nginx (для
> реализации связки nginx+apache).
> И вот например мне нужно тут в одной штуке нужно проверить несколько
> условий. В apache я просто писал несколько RewriteCond подряд. Тут в одном
> if несколько условий поставить нельзя. И, как оказалось, вложенные if не
> поддерживаются тоже. Так что же делать в таком случае?
> Вот один из примеров, который не знаю как расписать правильно:
> if ($request_uri ~* \.(jpg|gif|wmv|flv)$) {
> 	if ($request_uri !~ ^/webmasters/) {
> 		if($invalid_referer) {
> 			return 403;
> 		}
> 	}
> }

location /webmasters/ {
}

location ~* ^/webmasters/.+\.(jpg|gif|wmv|flv)$ {
}

location ~* \.(jpg|gif|wmv|flv)$ {
    if($invalid_referer) {
        return 403;
    }
}


More information about the nginx-ru mailing list