下面是我的 Jenkins 的 nginx 配置文件。其中大部分与我在文档中阅读的完全一致。
配置文件:
upstream app_server {
server 127.0.0.1:8080 fail_timeout=0;
}
server {
listen 80;
listen [::]:80 default ipv6only=on;
server_name sub.mydomain.net;
location ^~ /jenkins/ {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://app_server;
break;
}
auth_basic "[....] Please confirm identity...";
auth_basic_user_file /etc/nginx/.htpasswd;
}
}
导航到http://sub.mydomain.net/jenkins时,我收到提示我的基本身份验证服务器说:[....] 请确认识别...。
这是正确的,但是一旦我输入了正确的凭据,我就会再次得到PROMPTED AGAIN进行基本身份验证,但这一次:Server says: Jenkins。
这第二个隐藏的 basic_auth 是从哪里来的?!这对我来说没有任何意义。
在第一个提示上点击CANCEL,然后我正确地收到401 authentication required错误。
在第二个基本身份验证上点击取消( “服务器说:詹金斯”)我得到:
HTTP ERROR 401
Problem accessing /jenkins/. Reason:
Invalid password/token for user: _____
Powered by Jetty://
有谁知道可能发生了什么?