<div dir="ltr"><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">Hello,<br><br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">I guess the 'problem' you are struggling with is one you seem to inflict to yourself.<br><br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">As Valentin explained, and as it is the case with other directives as well (<a href="http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_param" target="_blank">fastcgi_param</a> immediately comes to my mind), if you specify some <a href="http://nginx.org/en/docs/http/ngx_http_headers_module.html#add_header" target="_blank">add_header</a> directives at a certain level, it will cut-off the default inheritance property, effectively <span style="color:rgb(102,0,0)"><i><b>not</b></i></span> applying add_header directives defined at upper levels.<br><br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">The real question here is:<br>Why do you wanna avoid duplicating the common add_header fields over all the locations?<br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">The obvious answer being the 'ease' of maintenance is maybe flawed:<br></div><ol><li>Two years later, to know the configuration applied to a location by a certain directive, you would need to look at several places. If you forgot you put some at server levels, you might end up with 'strange' behaviors. Even more true if the maintenance is done by someone else...</li><li>If you want to replace the configuration of a directive amongst all locations where it is defined, standard Linux (UNIX?) commands such as grep, sed, cut, awk, etc. are there to handle such repetitive job.</li><li>Finally, generating similar or identical copies of the same blocks on high volumes is generally not done by hand, but rather with tools such as configuration management ones.</li></ol><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)"><br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">I suggest you watch the video <a href="https://youtu.be/YWRYbLKsS0I" target="_blank">'Scalable configuration' from Igor Sysoev</a>, recorded during the nginx user conference from last year: that would maybe help you understand better what I attempted to explain here.<br><br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">What you sometimes think is a problem might actually save you from actually getting into trouble without even noticing it...<br></div><div class="gmail_default" style="font-size:small;color:rgb(51,51,153)">What is 'unefficient' to human eyes might be 'irrelevant' machine-wise... reverse might also be true. :o)<br></div><div class="gmail_extra"><div><div><font size="1"><span style="color:rgb(102,102,102)">---<br></span><b><span style="color:rgb(102,102,102)">B. R.</span></b><span style="color:rgb(102,102,102)"></span></font></div></div>
<br><div class="gmail_quote">On Mon, Jan 26, 2015 at 3:35 PM, okamzol <span dir="ltr"><<a href="mailto:nginx-forum@nginx.us" target="_blank">nginx-forum@nginx.us</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">OK, if I understand this right - in my original config I have 2 additional<br>
add_header (cache-control) directives in /image location. And these 2<br>
directives prevent that the security headers will be applied on server<br>
level? It seems so as this will explain why it works when I apply the<br>
sec.headers on location level...<br>
<br>
But how to handle domain-wide headers like those security headers and<br>
location specific ones like cache-control? I mean, without repeating all<br>
securty headers in each location?<br>
<br>
Posted at Nginx Forum: <a href="http://forum.nginx.org/read.php?2,256270,256276#msg-256276" target="_blank">http://forum.nginx.org/read.php?2,256270,256276#msg-256276</a><br>
<div><div><br>
_______________________________________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org" target="_blank">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx</a><br>
</div></div></blockquote></div><br></div></div>