我想为从nginx后面的服务器接收到的响应添加一个自定义头部。
虽然add_header适用于nginx处理的响应,但当使用proxy_pass时,它不会执行任何操作。
发布于 2013-01-25 02:22:09
有一个名为HttpHeadersMoreModule的模块可以让您更好地控制头部。它不随Nginx一起提供,需要额外安装。使用它,您可以执行以下操作:
location ... {
more_set_headers "Server: my_server";
}这将“为任何状态代码和任何内容类型将Server输出标头设置为自定义值”。它将替换已设置的标头,如果未设置,则添加它们。
发布于 2013-01-25 01:31:25
您可以尝试此解决方案:
在使用proxy_pass时,在location代码块中执行以下操作:
location ... {
add_header yourHeaderName yourValue;
proxy_pass xxxx://xxx_my_proxy_addr_xxx;
# Now use this solution:
proxy_ignore_headers yourHeaderName // but set by proxy
# Or if above didn't work maybe this:
proxy_hide_header yourHeaderName // but set by proxy
}我不确定这是不是你所需要的,但是尝试一下这个方法,也许结果会适合你的问题。
您还可以使用以下组合:
proxy_hide_header headerSetByProxy;
set $sent_http_header_set_by_proxy yourValue;https://stackoverflow.com/questions/14501047
复制相似问题