Вложенныедирективыилиобъединениеусловий
Andrey Ignatov
andr.pl at gmail.com
Wed Apr 16 16:28:43 MSD 2008
On Wed, Apr 16, 2008 at 11:57:17AM +0000, 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;
> }
> }
> }
Можно попробовать что-нибудь в таком духе:
if ($request_uri ~* \.(jpg|gif|wmv|flv)$) {
set $i "a";
}
if ($request_uri !~ ^/webmasters/) {
set $i "a$i"
}
if ($invalid_referer) {
set $i "a$i"
}
if ($i = "aaa") {
return 403;
}
Не красиво, но др. вариантов не знаю.
--
Andrey Ignatov
Skript, System administrator
More information about the nginx-ru
mailing list