我正在配置一个将对用户进行身份验证的应用程序,然后设置X-Accel-Redirect
标头和私有API密钥Foo
(用于测试目的),这些密钥将传递给代理端点。
我将私有api密钥设置为身份验证应用程序中的标头,并在我的nginx配置文件中包含以下位置块。如何根据upsteam服务器设置的内容将标头设置为代理应用程序?我也尝试过使用$http_foo
和$sent_http_foo
。目前,永远不会为代理设置Foo响应头。
location ~* ^/redirect {
internal;
resolver 8.8.8.8;
proxy_ssl_server_name on;
add_header Foo $upstream_http_foo;
set $my_host "requestb.in";
set $my_uri "a_test_uri";
proxy_pass http://$my_host/$my_uri;
}
答案 0 :(得分:3)
要使用的指令是proxy_set_header,所以在您的情况下:
proxy_set_header Foo $http_api_key; # assuming a "API-Key" header incoming
作为一般规则,您打算应用于与上游通信的任何设置都将以proxy_
为前缀