我正在为nginx使用auth模块。 (http://nginx.org/en/docs/http/ngx_http_auth_request_module.html) 是否有可能以某种方式存储来自/ auth的响应,因此我可以将它作为请求主体发送到另一个端点。
location /private/ {
auth_request /auth;
proxy_pass ...
proxy_set_body 'Here I want to put /auth response. How?';
}
location = /auth {
proxy_pass ...
}
答案 0 :(得分:13)
简答:
不,你不能。
答案很长:
您无法将回复正文返回auth_request
。您可以使用auth_request_set指令获取响应中返回的标头:
location / {
auth_request /auth;
auth_request_set $auth_foo $upstream_http_foo;
proxy_pass ...
proxy_set_body $auth_foo;
}
以上配置会将$auth_foo
变量设置为auth子请求的Foo
标头的值。