我正在为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 ...
}
最佳答案
简短回答:
不,你不能.
答案很长:
您无法将响应的主体返回到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标头的值.