我想为在 Ubuntu 服务器 12.04.1 上运行的 Apache 反向代理站点添加基本身份验证。
网络应用程序是Jenkins http://jenkins-ci.org运行在 Java EE 容器上。
我在中添加了以下配置httpd.conf,
ProxyPass /jenkins/ http://localhost:8080/jenkins/¬
ProxyPassReverse /jenkins/ http://localhost:8080/jenkins/¬
ProxyRequests Off¬
ProxyPreserveHost On¬
¬
<Proxy http://localhost:8080/jenkins*>¬
Order deny,allow¬
Deny from all¬
▸ AllowOverride AuthConfig¬
▸ AuthType Basic¬
AuthName "jenkins"¬
▸ AuthBasicProvider file¬
AuthUserFile /etc/apache2/passfile¬
▸ Require valid-user¬
▸ Satisfy any¬
</Proxy>
当我使用错误的密码或不存在的用户名进行身份验证时,我可以在以下位置找到以下消息错误日志阿帕奇的,
[2012 年 10 月 27 日星期六 17:51:59] [错误] [客户端 222.128.175.95] 用户 kane:
“/jenkins/”身份验证失败:密码不匹配 [10 月 27 日星期六
17:52:04 2012] [错误] [客户端 222.128.175.95] 未找到用户 Aladdin:
/詹金斯/
使用正确的用户名和密码时不会记录任何消息passfile。虽然我在网络浏览器中输入了正确的用户名和密码,但身份验证对话框将再次提示。
我还发现以下输出访问日志阿帕奇的,
222.128.175.95 - kane [27/Oct/2012:17:39:54 +0800]“GET /jenkins/ HTTP/1.1”401 794“-”“Mozilla/5.0(Macintosh;Intel Mac OS X 10_8_2)
AppleWebKit/537.4(KHTML,如 Gecko)Chrome/22.0.1229.94
野生动物园/537.4"
有人知道如何让它发挥作用吗?谢谢。
您是否也在 Jenkins 上启用了身份验证?请参阅此链接:https://wiki.jenkins-ci.org/display/JENKINS/Apache+frontend+for+security https://wiki.jenkins-ci.org/display/JENKINS/Apache+frontend+for+security有关设置的说明。
特别注意这一行,它说你不能同时在 Jenkins 和 Apache 中启用安全性,因为两者会发生冲突,导致你看到无限的提示。不幸的是你必须选择其中之一。
另请参阅此链接以获取有关 Apache + Jenkins 设置的更一般性讨论:https://wiki.jenkins-ci.org/display/JENKINS/Running+Jenkins+behind+Apache https://wiki.jenkins-ci.org/display/JENKINS/Running+Jenkins+behind+Apache
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)