我已经运行了 Hudson,并通过 nginx 将其提供给全世界。我使用 nginx 的 auth_basic 保护了 Hudson,效果很好。问题是,我想允许未经身份验证的请求到构建 URL,即/job/<job_name>/build
。
目前我的 nginx 配置中有这个:
upstream hudson {
server 127.0.0.1:8888;
}
server {
server_name ci.myurl.com;
root /var/lib/hudson;
location / {
proxy_pass http://hudson/;
auth_basic "Super secret stuff";
auth_basic_user_file /var/opt/hudson/htpasswd;
}
location ~ \/build {
auth_basic off;
}
}
我无法让第二个位置允许未经身份验证的请求。我尝试了各种组合
location ~ /job/(.*)/biuld { }
location ^~ \/build { }
location ~ \/job\/(.*)\/build { }
ETC...
令人抓狂!
有人能给我指出正确的方向吗?
谢谢,
广告。
答案1
第二个位置应该是:
location ~ \/build {
auth_basic off;
proxy_pass http://hudson/;
}