我正在设置一个带有LDAP auth的mercurial服务器,我想允许每个repo访问,所以我在每个repo下为.hg创建一个hgrc。
[web]
allow_push = user1
我的问题是,如果我使用这些hgrc文件,我无法推送任何用户(中止:授权失败)。如果我只是使用hgweb.config,我可以毫无问题地完成它
任何帮助?
由于
答案 0 :(得分:2)
当您将这些行放在hgweb.config
文件中时,您可以使用任何用户或仅列出您列出的那些用户吗?我的猜测是你的LDAP提供的格式与你预期的用户名不同(可能是电子邮件地址等),因此它们不匹配。
检查您的apache错误日志中是否有任何有趣的内容,并考虑更改日志格式以记录$REMOTE_USER
环境用户以查看匹配的内容。另外,如果您没有使用SSL连接,请确保将push_ssl
值设置为false(尽管您应该这样做)。
答案 1 :(得分:1)
当你的HTTP服务器是Nginx时,修改<input type="text" title="something that exceeds the width of the box" value="something that exceeds the width of the box">
以找出从Nginx到HG的用户重定向
log_format
并查看Nginx日志文件
vi /etc/nginx/nginx.conf
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';