Używanie nginx 1.2.1 Jestem w stanie dodać wiele nagłówków add_header
w następujący sposób:
server {
listen 80;
server_name localhost;
root /var/www;
add_header Name1 Value1; <=== HERE
add_header Name2 Value2; <=== HERE
location / {
echo "Nginx localhost site";
}
}
Wynik
GET /
HTTP/1.1 200 OK
Name1: Value1
Name2: Value2
Jednak gdy tylko skorzystam z tej add_header
dyrektywy location
, pozostałe add_header
dyrektywy server
są ignorowane
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";
}
}
Wynik
GET /
HTTP/1.1 200 OK
Name3: Value3
Name4: Value4
Dokumentacja mówi, że zarówno server
i location
są ważne context
i nie precyzuje, że używanie add_header
w jednym uniemożliwia użycie go w drugiej.
P1: Czy wiesz, czy jest to błąd lub zamierzone zachowanie i dlaczego?
P2: Czy widzisz inne opcje, aby to naprawić, niż korzystanie z HttpHeadersMoreModule
modułu?
add_header
treśćlocation
dyrektywy, ale nadal nie widzę dodanego tego nagłówka - jakieś pomysły?add_header
? Jeśli tak, upewnij się, że kod odpowiedzi pochodzi z dokumentacji, patrz nginx.org/r/add_header .