У меня есть такая конфигурация nginx.
server {
...
auth_basic 'closed';
auth_basic_user_file /etc/nginx/htpassw;
location = /authentication {
proxy_method POST;
proxy_pass http://auth-proxy/api/v1/token-verify/;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_set_header X-Original-URI $request_uri;
proxy_set_header X-Original-METHOD $request_method;
}
location /location/ {
satisfy any;
auth_request /authentication;
proxy_pass http://location-proxy/;
}
}
И проблема в том, что auth-proxy
может вернуть статус 401 или 403. Но похоже, что nginx игнорирует статус 403. Из-за сбоя базовой аутентификации.
Есть ли способ установить nginx conf в этом случае?
try basic auth;
if failed
try auth_request and return status code from it;