一、rewrite regex replacement [flag]url
二、flag为break时,url重写后,直接使用当前资源,不在执行location里其余语句,完成本次请求,地址栏url不变。spa
三、flag为last时,url重写后,从新匹配location,进入匹配到的location进行处理,地址栏url不变。code
四、示例server
location ~ /break/ { rewrite ^/break/(.*) /test/$1 break; return 605; } location ~ /last/ { rewrite ^/last/(.*) /test/$1 last; return 606; } location ~ /test/ { return 607; }
1)输入http://localhost/break/1,返回404找不到,若不加break(资源会重定向到/test/1,则会请求此资源,此资源没找到,因此返回404),则会返回605blog
2)输入http://localhost/last/1,返回607(资源会重定向到/test/1,又会从新进入server的location进行从新匹配),若不加last,则会返回606资源