配置块可以套娃, 例如:
main
http {
upstream{...}
split_client{...}
map{...}
geo{...}
server{
if() {...}
location() {
limit_except {...}
}
location() {
location() {...}
}
}
server{}
}
但配置块嵌套多了, 可能会出现冲突
需要注意一下指令的上下文与 指令类型 [动作类指令, 值指令]
值指令示例:
-
root
-
access_log
-
gzip
动作类指令示例:
- rewrite
- proxy_pass
判断指令是否可合并, 需要根据生效阶段判断
-
server_rewrite阶段
-
rewrite阶段
-
content阶段
指令上下文示例
Syntax(语法): log_format name [escape=default|json|none] string …;
Default(默认): log_format combined “…”;
Context(上下文): http
对比
Syntax(语法): access_log path [forma