Syntax: |
add_header name value [always]; |
Default: |
— |
Context: |
http , server , location , if in location |
Adds the specified field to a response header provided that the response code equals 200, 201 (1.3.10), 204, 206, 301, 302, 303, 304, 307 (1.1.16, 1.0.13), or 308 (1.13.0). The value can contain variables.
There could be several add_header
directives. These directives are inherited from the previous level if and only if there are no add_header
directives defined on the current level.
add_header指令可以从上一级继承 当且仅当 当前级别没有add_header指令
If the always
parameter is specified (1.7.5), the header field will be added regardless of the response code.
在全局配置加了个需要使用的header, 现在假如在某个location 或者 server 也需要add_header,则会覆盖掉全局配置的
http {… add_header http-global ‘123’;…}
server {… add_header server-conf ‘321’;…}
则 这个server 是看不到 http-global: 123 这个header的,需要注意
其实,proxy_set_header 也是完全相同的情况
Syntax: |
proxy_set_header field value; |
Default: |
proxy_set_header Host $proxy_host;
proxy_set_header Connection close;
|
Context: |
http , server , location |
Allows redefining or appending fields to the request header passed to the proxied server. The value
can contain text, variables, and their combinations. These directives are inherited from the previous level if and only if there are no proxy_set_header
directives defined on the current level. By default, only two fields are redefined: