server {
listen 127.0.0.1:80;
set $test A;
set $testB B;
location / {
if ($test ~* "A") {
proxy_pass http://www.so.com;
break;
}
if ($testB ~* "B") {
proxy_pass http://www.sogou.com;
#break;
}
}
listen 127.0.0.1:80;
set $test A;
set $testB B;
location / {
if ($test ~* "A") {
proxy_pass http://www.so.com;
break;
}
if ($testB ~* "B") {
proxy_pass http://www.sogou.com;
#break;
}
}
}
希望满足某个条件的时候,走某个proxy_pass。但是如果多个if都满足,比如上例中的情况,在没有break的时候,会执行下面的;
为了第一个匹配上之后就执行proxy_pass,可以加上break