将自定义的固定头传递给nginx中的auth_request



我需要一些指导来将静态头传递给nginx中的auth_request
我的位置配置如下:

location = /auth {
internal;     
proxy_pass http://authserver.com:8009/auth;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_set_header X-Original-URI $request_uri;
}

我的子请求如下所示:

location = /app/finance/ {
proxy_pass_request_headers      on;
# Custom header to be added
proxy_set_header CallType "MAJOR";
auth_request /auth;
error_page 401 =401 /auth;      
proxy_pass http://myaddservice.com:8080/finance/;
}

我需要将CallType标头传递给auth_request。我尝试过使用add_header、proxy_set_header,但没有成功
我有一个Rest Api要在auth_request后面进行身份验证,它需要CallType标头
我不能让它作为api头的一部分通过,因为它是一个内部进程。

你可以试试这个:

location = /auth {
internal;     
proxy_pass http://authserver.com:8009/auth;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_set_header X-Original-URI $request_uri;
proxy_set_header CallType $calltype;
}
location = /app/finance/ {
set $calltype "MAJOR";
proxy_pass_request_headers      on;
auth_request /auth;
error_page 401 =401 /auth;      
proxy_pass http://myaddservice.com:8080/finance/;
}

如果将从其他位置调用auth请求,则$calltype变量将具有空值,并且根本不会设置CallType标头(如果将空值作为参数传递给add_headerproxy_set_header指令,nginx不会设置标头(。

相关内容

  • 没有找到相关文章

最新更新