rewrite 指令
- new,2022-06-07,chenxizhan1995@163.com
Module ngx_http_rewrite_module
该指令是 ngx_http_rewrite_module 模块提供的。
ngx_http_rewrite_module 模块
这个模块有七个指令。
- break
- if
- return
- rewrite
- rewrite_log
- set
- uninitialized_variable_warn
该模块的用处是改写请求URI,实现这一目的使用的手段包括:PCRE、重定向、if 判断。
指令执行流程
该模块的 break if return rewrite set 指令按如下规则执行
- 依次执行 server 块内的 ngx_http_rewrite_module 模块的指令
- 循环
该模块的 break if return rewrite set 指令按如下规则执行 - 依次执行 server 块内的 ngx_http_rewrite_module 模块的指令
- 循环
- 根据 URI 寻找匹配的 location
- 顺序执行 location 块内的 ngx_http_rewrite_module 模块的指令
- 若有 rewrite 指令,重复循环,但最多不超过 10 次。若需要第11次循环,则返回错误
break 指令
Syntax: break;
Default: —
Context: server, location, if
Stops processing the current set of ngx_http_rewrite_module directives.
PS:只是终止 http_rewrite 指令的执行,其它模块的指令继续处理。