rewrite ^/(.*).html$ /.html?mode=test redirect;
現在有上面那樣的rewrite規則,可以生效,但會多次redirect
。如何修改才能讓它只跳一次?
用break
也不行,因為break
不會修改瀏覽器網址列。
例如:http://xxx.xx.xx/weather/bug.html
會一直跳下去,出現weather/bug.html?mode=test&mode=test&mode= test&mode=test&mode=test&mode=test&mode=test&mode=test&mode……
location / {
if($args *~ "mode=formal"){
rewrite (.*) ? redirect;
rewrite (.*) ?mode=test redirect;
}
else if($args [[不包含mode=test]]){
rewrite ^/(.*).html$ /.html?mode=test redirect;
}
error_page 404 = @nodejs;
}
我想用上面這種方式來配置,先判斷$args
,再進行rewrite,不知道能行不。
還有那個[[不包含mode=test]]該怎麼寫?