Ssl 使用Apache和Windows通过HTTP推送我的Mercurial存储库

Ssl 使用Apache和Windows通过HTTP推送我的Mercurial存储库,ssl,mercurial,apache2,windows-server-2003,Ssl,Mercurial,Apache2,Windows Server 2003,所以我成功了。我可以使用HTTP将mercurial存储库远程克隆到我的Windows Server 2003计算机以及该计算机的IP地址。虽然我停用了IIS6,现在正在使用Apache2.2.x。但不是所有的工作现在…该死!事情是这样的: 克隆进展顺利!但是,当我想将我的更改推送到原始存储库时,我会收到消息“无法锁定静态http存储库”。在互联网上,我读到了一些解释,说Mercurial不是设计用来推送HTTP连接的。不过,在Mercurial网站上有一些关于配置hgrc文件的内容 还可以通过

所以我成功了。我可以使用HTTP将mercurial存储库远程克隆到我的Windows Server 2003计算机以及该计算机的IP地址。虽然我停用了IIS6,现在正在使用Apache2.2.x。但不是所有的工作现在…该死!事情是这样的:

克隆进展顺利!但是,当我想将我的更改推送到原始存储库时,我会收到消息“无法锁定静态http存储库”。在互联网上,我读到了一些解释,说Mercurial不是设计用来推送HTTP连接的。不过,在Mercurial网站上有一些关于配置hgrc文件的内容

还可以通过HTTPS(或SSL)将Apache配置为主机。为此,您必须加载启用OpenSSL并生成密钥的模块

配置hgrc文件 只需在[web]行下添加“push_ssl=false”。但是,当您将更改推回时,将此文件放在何处?!因为我把它放在服务器的根目录“.hg”目录中,所以什么都不起作用

与Apache一起使用SSL/HTTPS 当我尝试访问'https://myipaddress它失败了,显示了一条荷兰式的消息,意思是“服务器响应时间太长”。尝试推送也会给我一条荷兰式的错误消息,意思大致相同。它无法通过https连接到我的服务器,尽管我完全按照步骤操作

我不在乎以上哪种解决方案对我有效。到目前为止,它们都不起作用。那么,有谁能帮我找到上面的解决方案吗?选择最简单的!我将非常感激你的帮助,不仅仅是我

摘要 -Windows Server 2003 -使用OpenSSL的Apache 2.2 -Mercurial 1.8.2 -我可以克隆,但不能推

谢谢大家!


Maarten Baar(s)

似乎您的apache配置不正确,无法让它完成您想要的任务。根据您的问题,听起来您有一个指向要服务的存储库的路径(可能是服务器的根)


Mercurial附带了一个用于此目的的脚本,最新版本为hgweb.cgi。对于设置它,有相当好的说明。它应该允许克隆和推送。如果不配置https,则需要
push_ssl=false
,还需要
allow_push
行,该行将允许某些用户或所有(*)推送到存储库。但所有这些都应该是安装文档的一部分。

我让SSL工作起来了。许多人说仅仅通过http传输敏感数据是不明智的。但我仍然收到消息“无法锁定静态http存储库”。我使用hgweb.cgi,并已将hgweb.cgi设置为ScriptAlias。在hgweb.cgi中,我有一个要访问的存储库集合。这是我的回购协议。但是,如何才能在不碰到错误“无法锁定静态http存储库”的情况下推送到特定的存储库呢?