Я пытаюсь использовать nginx
«s ngx_http_auth_request_module
таким образом:как я могу использовать внешний URI с модулем auth_request в Nginx в
server {
location/{
auth_request http://external.url;
proxy_pass http://protected.resource;
}
}
Это не работает, ошибка:
2017/02/21 02:45:36 [error] 17917#0: *17 open() "/usr/local/htmlhttp://external.url" failed (2: No such file or directory), ...
Или таким образом с named location
:
server {
location/{
auth_request @auth;
proxy_pass http://protected.resource;
}
location @auth {
proxy_pass http://external.url;
}
}
в этом случае ошибка Альма й то же самое:
2017/02/22 03:13:25 [error] 25476#0: *34 open() "/usr/local/[email protected]" failed (2: No such file or directory), client: 127.0.0.1, server: , request: "GET/HTTP/1.1", subrequest: "@auth", host: "127.0.0.1"
Я знаю, что есть способ, как это:
server {
location/{
auth_request /_auth_check;
proxy_pass http://protected.resource;
}
location /_auth_check {
internal;
proxy_pass http://external.url;
}
}
Но в этом случае http://protected.resource
не может использовать /_auth_check
путь.
Есть ли способ использовать внешний URI
в качестве параметра для директивы auth_request
без перекрытия маршрутизации http://protected.resource
?
Если нет, то почему?
Это выглядит немного странно, чтобы искать URI auth_request
через статические файлы (/usr/local/html
).
Большое спасибо! Я не мог найти это в документации, не так ли? –
Его нет, но префикс не требуется, чтобы начать с '/'. –