nginx配置rewrite总结
1、rewrite regex replacement [flag]
2、flag为break时,url重写后,直接使用当前资源,不在执行location里其他语句,完成本次请求,地址栏url不变。
3、flag为last时,url重写后,重新匹配location,进入匹配到的location进行处理,地址栏url不变。
4、示例
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),则会返回605
2)输入http://localhost/last/1,返回607(资源会重定向到/test/1,又会重新进入server的location进行重新匹配),若不加last,则会返回606