我在nginx配置上有重定向规则,比如,
location ~ ^/abc/(.*) {
rewrite ^www.abc.com/web/primary/abc.html/$1;
}
但我需要排除我的重定向位置的几个目录,例如
location ~ ^/abc/ae
location ~ ^/abc/be
不应将那些ae和be重定向到上面的URL。有人可以帮忙吗?
答案 0 :(得分:0)
虽然可以使用location
块实现,但您需要使块功能对于动态内容来说很复杂。
最简单的方法是正则表达式中的否定先行断言。
在您的示例中,location
块并不是必需的,并且您的rewrite
指令似乎缺少一些空格。但是这样的事情对你有用:
rewrite ^/abc/(?!ae|be)(.*)$ /foo/$1 last;
(?!
序列开始正则表达式(ae|be
),不得出现在该点。有关详情,请参阅this document。