Is this a bug???
Maxim Dounin
mdounin at mdounin.ru
Tue Feb 21 08:57:34 UTC 2012
Hello!
On Tue, Feb 21, 2012 at 12:47:37PM +0800, 马优生 wrote:
> hello,everyone:
> I have the following questions about add_header instruction.(version 1.1.8)
>
> This is my nginx.conf
>
> 43 add_header Server ok;
> 44 location / {
> 45 add_header location ok;
> 46 root html;
> 47 index index.html index.htm;
>
> then construct a request:
>
> [root at gitclubs conf]# curl -I http://localhost/
> HTTP/1.1 200 OK
> Server: nginx/1.0.12
> Date: Mon, 20 Feb 2012 08:13:02 GMT
> Content-Type: text/html
> Content-Length: 151
> Last-Modified: Mon, 13 Feb 2012 02:12:22 GMT
> Connection: keep-alive
> location: ok
> Accept-Ranges: bytes
> [root at gitclubs conf]#
>
> There is only location header.
>
> In ngx_http_headers_merge_conf() (ngx_http_headers_filter_module.c)
> 440 if (conf->headers == NULL) {
> 441 conf->headers = prev->headers;
> 442 }
>
> If I config add_header in location and server, then prev->headers can't be merged to conf->headers.
> Is this intended or a bug?
This is intended. Array-type directives (all of them, not only
add_header) are inherited only if there are no corresponding
directives defined at particular level.
Maxim Dounin
More information about the nginx
mailing list