Sử dụng nginx 1.2.1 Tôi có thể thêm nhiều tiêu đề bằng cách sử dụng add_header
như sau:
server {
listen 80;
server_name localhost;
root /var/www;
add_header Name1 Value1; <=== HERE
add_header Name2 Value2; <=== HERE
location / {
echo "Nginx localhost site";
}
}
Kết quả
GET /
HTTP/1.1 200 OK
Name1: Value1
Name2: Value2
Tuy nhiên, ngay sau khi tôi sử dụng add_header
chỉ thị bên trong location
, các add_header
chỉ thị khác server
được bỏ qua
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";
}
}
Kết quả
GET /
HTTP/1.1 200 OK
Name3: Value3
Name4: Value4
Các tài liệu nói rằng cả hai server
và location
có giá trị context
và không nhà nước rằng việc sử dụng add_header
trong một ngăn chặn sử dụng nó trong khác.
Q1: Bạn có biết nếu đây là một lỗi hoặc hành vi dự định và tại sao?
Câu 2: Bạn có thấy các tùy chọn khác để sửa lỗi này hơn là sử dụng HttpHeadersMoreModule
mô-đun không?
add_header
tronglocation
chỉ thị, nhưng tôi vẫn không thấy tiêu đề này được thêm vào - có ý tưởng nào không?