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



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

[web]
allow_push = user1

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

有什么帮助吗?

感谢

当你把这些行放在hgweb.config文件中时,你能和任何用户推送吗?我的猜测是,您的LDAP提供的用户名格式与您预期的不同(可能是电子邮件地址等),因此它们不匹配。

请检查您的apache错误日志以了解任何有趣的内容,并考虑更改日志格式以记录$REMOTE_USER环境用户,以查看匹配的内容。此外,如果您没有使用SSL连接,请确保您的push_ssl值设置为false(尽管您应该这样做)。

当您的HTTP服务器是Nginx时,修改log_format以找出哪个用户从Nginx重定向到HG

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

并查看Nginx日志文件

cat /var/log/nginx/nginx.log

最新更新