1
我試圖用nginx
的ngx_http_auth_request_module
以這樣的方式:我如何使用外部URI與nginx的的auth_request模塊
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;
}
}
在這種情況下,錯誤是阿爾莫ST相同:
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
路由?
如果不是,爲什麼?
通過靜態文件(/usr/local/html
)查找auth_request
的URI看起來有點奇怪。
非常感謝您!我無法在文檔中找到它,它在那裏嗎? –
它不存在,但是也不需要以'/'開頭的前綴。 –