我们是一家小公司(它的微软商店),我们目前使用颠覆与VisualSVN安装(很容易安装顺便说一句) 我目前评估Mercurial是因为svn中的分支恶梦。HTTPS for Mercurial 1.9.2在Windows Server 2008/IIS 7上给我Errno 10054
所以首先我跟着 http://www.firegarden.com/software/hosting-mercurial-repo-iis7-windows-server-2008r2-x64-python-isapi-cgi 与最新善变的源代码1.9.2和Python 2.7得到了下面的错误
Failed to import callback module 'hgwebdir_wsgi'
The specified module could not be found.
,所以我划伤说,然后我跟着这个 http://www.jeremyskinner.co.uk/mercurial-on-iis7/和它的工作,直到我到达了步骤 启用SSL这是问题所在。我什至设置使用OpenSSL的SSL证书 http://www.dylanbeattie.net/docs/openssl_iis_ssl_howto.html 仍然没有。 这是错误我得到
URLError: [Errno 10054] An existing connection was forcibly closed by the remote host
[command returned code 255...]
服务器端我有这个 hgweb.config
[collections]
C:\repository\hg = C:/repository/hg
[web]
#push_ssl = false
allow_push = *
baseurl = /hg
cacerts =
的web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="Python" path="*.cgi" verb="*" modules="CgiModule" scriptProcessor="C:\Python27\python.exe -u "%s"" resourceType="Unspecified" />
</handlers>
<rewrite>
<rules>
<rule name="rewrite to hgweb" patternSyntax="Wildcard">
<match url="*" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Rewrite" url="hgweb.cgi/{R:1}" />
</rule>
</rules>
</rewrite>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength ="2147482624" />
</requestFiltering>
</security>
</system.webServer>
<system.web>
<httpRuntime executionTimeout="540000" maxRequestLength="2097151"/>
</system.web>
客户端hgrc
[paths]
default = https://webtest/hg/test/
[hostfingerprints]
webtest = 50:de:a4:d9:72:59:68:fd:91 ...
编辑 我试图在MacBook上安装MacHg来测试。我用http://machghelp.jasonfharris.com/kb/connections/how-do-i-add-a-server-certificate-or-fingerprint-for-https作为演练,它工作!所以这消除了服务器(即服务器可以从http & https推&拉),所以现在我确定它的Windows/TortoiseHg有问题。 (但以下这些步骤tortoiseHg给我什么:()
EDIT2 还有一个发现...使用HTTPS我甚至不能克隆,它仅适用于HTTP。我试图克隆的CodePlex项目之一使用HTTPS和工作!...这是很无奈
我这么想吗?任何帮助将不胜感激。
尝试使用任何浏览器连接https URL并在此处显示IIS的答案 –
它打开了带证书错误的默认存储库页面 – surya
**其中** cert错误???如果由于自签名证书而导致未被信任的根 - 将其添加到trustedRoot(如果没有人提出更好的解决方案) –