在.hg / hgrc上的allow_push似乎不起作用

时间:2012-03-01 13:31:57

标签: mercurial hgrc

我正在设置一个带有LDAP auth的mercurial服务器,我想允许每个repo访问,所以我在每个repo下为.hg创建一个hgrc。

[web]
allow_push = user1

我的问题是,如果我使用这些hgrc文件,我无法推送任何用户(中止:授权失败)。如果我只是使用hgweb.config,我可以毫无问题地完成它

任何帮助?

由于

2 个答案:

答案 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"';