我已经在Windows7( II7 Server2008)上启动并运行了hgweb。web界面工作正常,我可以在那里查看、拉取和克隆存储库。但我不能推送,这样做会在“搜索更改”之后立即出现502错误。使用--debug将最后几行显示为:
sending unbundle command
sending 622 bytes
HTTP Error: 502 (Bad Gateway)我使用TortoiseHG进行推送,但结果与使用mercurial命令行时相同。
我遵循了这里的教程:http://www.sjmdev.com/blog/post/2011/03/30/setting-mercurial-18-server-iis7-windows-server-2008-r2.aspx来设置hgweb。
发布于 2012-06-07 00:56:37
看起来像是一个老问题,但肯定会有人再次遇到它。我差一点就在墙上画了一个黑色的圆圈...无论如何,我们的问题是中央存储库的创建方式。我们以本地管理员的身份远程连接到机器时,从BitBucket克隆了它。
问题在Repository.hg文件夹中。您需要设置正确的权限。尝试添加Everyone ->完全权限进行测试。请确保之后将其更改为专用网络登录帐户或适当的本地帐户。
我看到了完全相同的行为--即使推送也工作得很好,除了在所有时间之后获得一个糟糕的网关。设置正确的权限后,问题就消失了。
现在考虑一下,可能最好的解决方案是将使用存储库的每个网络登录添加到机器用户,然后为本地用户设置对.hg文件夹的访问权限。
希望这能帮助到别人。
发布于 2011-08-11 11:00:10
尝试使用ISAPI module方法,而不是执行phython.exe as documented here的CGI。这里还有另一个related, and possibly duplicate question。
发布于 2012-01-12 03:03:45
看看hgweb.config文件中的'Push_ssl‘设置。
我得到了相同的错误(我的设置为'*'),并能够通过完全删除行来解决它。诚然,这使得Mercurial不太安全,但它让我可以在研究如何在服务器上正确配置SSL的同时解决配置问题(目前是这样)。
您可能还必须检查'Allow_push‘设置,以避免进一步的错误(或重新检查您的授权)。
注意:至少在我的例子中,拥有'push_ssl = false‘是不够的,因为这会导致更多的错误(授权失败)。
(同样,在服务器得到适当保护之前,这只是一个临时解决方案。)
https://stackoverflow.com/questions/6350618
复制相似问题