Вложенныедирективыилиобъединениеусловий
Arthur F. Bier
izatop at mail.ru
Wed Apr 16 16:26:23 MSD 2008
Larry Gingras пишет:
> Переписываю очень сложную и навороченную конфигурацию apache под nginx (для
> реализации связки nginx+apache).
> И вот например мне нужно тут в одной штуке нужно проверить несколько условий. В
> apache я просто писал несколько RewriteCond подряд. Тут в одном if несколько
> условий поставить нельзя. И, как оказалось, вложенные if не поддерживаются тоже.
> Так что же делать в таком случае?
> Вот один из примеров, который не знаю как расписать правильно:
> if ($request_uri ~* \.(jpg|gif|wmv|flv)$) {
> if ($request_uri !~ ^/webmasters/) {
> if($invalid_referer) {
> return 403;
> }
> }
> }
>
>
>
if ($request_uri ~* \.(jpg|gif|wmv|flv)$) {
set $uri_old $request_uri;
rewrite .* /checkrule;
}
location /checkrule {
if ($uri_old !~ ^/webmasters/) {
return 403;
}
}
А папук вебмастер обрабатывать отдельным локейшенем.
Что первое в голову пришло. Правда я не знаю насколько оптимальна будет
подобная конструкция.
More information about the nginx-ru
mailing list