使用Nginx 1.2.1我可以使用add_header添加多个标头,如下所示:
原文链接:https://www.f2er.com/ubuntu/348789.htmlserver { listen 80; server_name localhost; root /var/www; add_header Name1 Value1; <=== HERE add_header Name2 Value2; <=== HERE location / { echo "Nginx localhost site"; } }
结果
GET / HTTP/1.1 200 OK Name1: Value1 Name2: Value2
但是,当我在location中使用add_header指令时,将忽略服务器下的其他add_header指令
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"; } }
结果
GET / HTTP/1.1 200 OK Name3: Value3 Name4: Value4
documentation表示服务器和位置都是有效的上下文,并没有说明在一个中使用add_header会阻止在另一个中使用它.
Q1:你知道这是一个bug还是预期的行为?为什么?
Q2:除了使用HttpHeadersMoreModule
模块之外,您还看到其他选项吗?