Are headers set in the server block inherited to all location blocks
    justink101 
    nginx-forum at nginx.us
       
    Wed Feb  5 06:49:59 UTC 2014
    
    
  
I am seeing strange behavior using includes. For example, if I request a
javascript file (ending in .js) the headers set globally in the server block
are not set. I was under the impression that if you set headers in the
server block, ALL location blocks below inherit those headers.
See the following:
server {
    ...
    add_header Strict-Transport-Security max-age=31556926;
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Frame-Options DENY;
    add_header X-Content-Type-Options nosniff;
   include expires.conf;
   ...
}
# expires.conf
location ~* \.(?:ico|js|css|gif|jpe?g|png|xml)$ {
  expires 7d;
  add_header Pragma public;
  add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}
When requesting a .js file, the Pragma and Cache-Control headers are set,
but all the headers set in the base server block are not. What is the fix
here?
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,247185,247185#msg-247185
    
    
More information about the nginx
mailing list