Utilizzando nginx 1.2.1 sono in grado di aggiungere più intestazioni usando add_header
come segue:
server {
listen 80;
server_name localhost;
root /var/www;
add_header Name1 Value1; <=== HERE
add_header Name2 Value2; <=== HERE
location / {
echo "Nginx localhost site";
}
}
Il risultato
GET /
HTTP/1.1 200 OK
Name1: Value1
Name2: Value2
Tuttavia, non appena utilizzo la add_header
direttiva all'interno location
, le altre add_header
direttive sotto server
sono ignorate
server {
listen 80;
server_name localhost;
root /var/www;
add_header Name1 Value1; <=== HERE
add_header Name2 Value2; <=== HERE
location / {
add_header Name3 Value3; <=== HERE
add_header Name4 Value4; <=== HERE
echo "Nginx localhost site";
}
}
Il risultato
GET /
HTTP/1.1 200 OK
Name3: Value3
Name4: Value4
La documentazione dice che sia server
e location
sono validi context
e non lo fa stato che l'uso add_header
in un'impedisce di utilizzarlo in un altro.
Q1: Sai se si tratta di un bug o del comportamento previsto e perché?
Q2: vedi altre opzioni per risolverlo oltre all'utilizzo del HttpHeadersMoreModule
modulo?
add_header
all'interno dellalocation
direttiva, ma non vedo ancora questa intestazione aggiunta - qualche idea?