Windows服务器2008 / IIS 7上的Mercurial 1.9.2的HTTPS为我提供了Errno 10054 [英] HTTPS for Mercurial 1.9.2 on windows server 2008/IIS 7 giving me Errno 10054
问题描述
我们是一家小公司(它是一家微软商店)我们目前正在使用安装了VisualSVN的subversion(很容易设置顺便说一句)
我目前正在评估Mercurial因为svn中的分支噩梦。
We are a small company (its a Microsoft shop) we are currently using subversion with VisualSVN installed (pretty easy to setup btw) I am currently evaluating Mercurial because of branching nightmare in svn.
所以首先我跟着
http://www.firegarden.com/software/hosting-mercurial-repo-iis7-windows-server-2008r2-x64-python-isapi-cgi
与最新的mercurial源代码1.9.2和python 2.7得到以下错误
So first i followed http://www.firegarden.com/software/hosting-mercurial-repo-iis7-windows-server-2008r2-x64-python-isapi-cgi with latest mercurial source code 1.9.2 and python 2.7 got the below error
Failed to import callback module 'hgwebdir_wsgi'
The specified module could not be found.
所以我划伤然后我跟着这个
< a href =http://www.jeremyskinner.co.uk/mercurial-on-iis7/ =nofollow> http://www.jeremyskinner.co.uk/mercurial-on-iis7/ 它一直有效,直到我到达步骤
启用SSL 这就是问题所在。我甚至使用OpenSSL
设置ssl证书 http://www.dylanbeattie.net/docs/ openssl_iis_ssl_howto.html
仍然没有。
这是我得到的错误
so i scratched that and then i followed this http://www.jeremyskinner.co.uk/mercurial-on-iis7/ and it worked until i reached the step Enabling SSL which is where the problem is. i even setup ssl certs using OpenSSL http://www.dylanbeattie.net/docs/openssl_iis_ssl_howto.html still nothing. this is the error i get
URLError: [Errno 10054] An existing connection was forcibly closed by the remote host
[command returned code 255...]
服务器端我有这个
hgweb.config
Server side i have this hgweb.config
[collections]
C:\repository\hg = C:/repository/hg
[web]
#push_ssl = false
allow_push = *
baseurl = /hg
cacerts =
web.config
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 作为演练,它的工作原理!所以这消除了服务器(ieserver可以从http& https推送和拉出)所以现在我确定它的我的Windows / TortoiseHg有问题。 (但是按照这些步骤,tortoiseHg没有给我任何东西:()
EDIT I tried to install MacHg on my macbook to test. i used http://machghelp.jasonfharris.com/kb/connections/how-do-i-add-a-server-certificate-or-fingerprint-for-https as walkthrough and it WORKS!! so this eliminates server(i.e.server can push & pull from both http & https) so now i am sure its my windows/TortoiseHg which has problem. (but following these steps for tortoiseHg gives me nothing :( )
EDIT2
还有一个发现...我不能甚至克隆使用https,它只适用于http。我试图使用https克隆其中一个codeplex项目,这是有效的!...这真的很令人沮丧
EDIT2 One more finding... i can't even clone using https, it only works for http. I tried to clone one of codeplex projects using https and that works!...This is really frustrating
我错过了什么东西?任何帮助将不胜感激。
Am i missing something? any help will be appreciated.
推荐答案
当我使用旧版本即Mercurial 1.8.4时,它有效。所以我停止了调查任何进一步的
It worked when i used Older version i.e. Mercurial 1.8.4. So i stopped investigating any further
这篇关于Windows服务器2008 / IIS 7上的Mercurial 1.9.2的HTTPS为我提供了Errno 10054的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!