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

标签 ssl mercurial apache2 windows-server-2003

所以我做到了。我可以使用 HTTP 将 mercurial-repositories 远程克隆到我的 Windows Server 2003 机器和该机器的 ipaddress。尽管我确实停用了 IIS6 并且现在正在使用 Apache 2.2.x。但现在并不是所有的工作......该死的!事情是这样的:

克隆很顺利!但是当我想将我的更改推送到原始存储库时,我收到消息“无法锁定静态 http-repository”。在 Internet 上,我读到了一些解释,即 Mercurial 并非设计用于推送 HTTP 连接。尽管如此,在 Mercurial 网站上还是有关于配置 hgrc 文件的内容。

还可以将 Apache 配置为通过 HTTPS(或 SSL)托管。为此,您必须加载启用 OpenSSL 和生成 key 的模块。

配置 hgrc 文件 只需在 [web] 行下添加“push_ssl = false”。但是在将更改推回时该文件放在哪里?!因为我把它放在服务器的根目录中,在“.hg”目录中,没有任何作用。

在 Apache 中使用 SSL/HTTPS 当我尝试访问“https://myipaddress”时失败,显示一条荷兰语消息,意思是“服务器响应时间太长”。尝试推送也给了我一个荷兰语错误消息,意思差不多。尽管我完全按照 this blog 中的步骤操作,但它无法通过 https 连接到我的服务器.

我不关心以上哪种解决方案适合我。结果到目前为止,它们都不起作用。所以,请问有人可以帮我解决上述问题之一吗?选择最简单的!我们将不胜感激,不仅是我。

总结 -Windows 服务器 2003 -Apache 2.2 与 OpenSSL -Mercurial 1.8.2 -我可以克隆,但不能推送!

谢谢!

马丁·巴尔

最佳答案

看起来您可能没有正确配置 apache 以使其执行您想要的操作。根据您的问题,听起来您有一条路径(可能是服务器的根目录)指向您要服务的存储库。

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

关于ssl - 使用 Apache 和 Windows 通过 HTTP 推送我的 Mercurial 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6266638/

相关文章:

Mercurial:异地远程操作(remotecmd.hgrc)

ssl - 在域上启用 HTTPS

mercurial - 如何在 Mercurial 中使用重叠存储库

ruby-on-rails - 有没有办法在 Rails Web 应用程序中获取客户端的实际端口?

.htaccess - 使用单页应用程序重定向到 .htaccess 上的 https

asp.net - 如何使用 https 保护网站

ssl - Glass fish HTTPS 重定向到不同的 URL

ios - NSURLSession - 忽略 SSL 证书警告

Java - System.setProperty javax.net.ssl.keyStore - 引用 Jar 中的 key 文件

eclipse - 为 Eclipse 安装 mercurial 插件时出错