我正在尝试通过Redmine设置Subversion版本库浏览。 当我尝试访问版本库选项卡时,我遇到了证书问题。
我在Windows 2003服务器上使用VisualSVN。
在服务器日志文件(production.log)中,我看到:
/列表/列表没有closures标签行:位置:最后80个未使用的字符:输出是:svn:“ https://192.168.1.13:8443 ”的选项:服务器证书validation失败:为不同的主机名颁发证书,颁发者是不受信任( https://192.168.1.13:8443 )在layouts / base内渲染模板在1.57800(0 reqs / sec)中完成| 渲染:0.01600(1%)| DB:0.03100(1%)| 500内部服务器错误[ http://192.168.1.16/repositories/show/vss]
在subversion_adapter.rb中,我有:
def credentials_string str = '' str << " --username #{shell_quote(@login)}" unless @login.blank? str << " --password #{shell_quote(@password)}" unless @login.blank? || @password.blank? str << " --no-auth-cache --trust-server-cert --non-interactive" str end
和
cmd = "#{SVN_BIN} list --xml #{target(URI.escape(path))}@#{identifier} 2>&1"
(基于http://www.redmine.org/issues/816 )
当我删除文件夹:D:\ Documents and Settings \ Administrator \ Application Data \ Subversion \ auth,我得到这个在命令提示符下:
D:\ Documents and Settings \ Administrator> svn list –username user –password pass word https://192.168.1.13:8443/错误validation服务器证书为' https://192.168.1.13:8443 ': – 证书不是由可信任的机构颁发的。 使用指纹手动validation证书! – 证书主机名称不匹配。 证书信息: – 主机名:SrcSafe – 有效期:从星期三,15四月2009 02:41:16 GMT到星期六,2019年4月13日02:41:16 GMT
这会在auth \ svn.ssl.server中填充一个条目,但在svn.simple,svn.ssl.client-passphrase或svn.username中没有任何内容。
在D:\ Documents and Settings \ Administrator \ Application Data \ Subversion \ server中,我还设置了:ssl-trust-default-ca = yes store-ssl-client-cert-pp = yes
现在,我很确定在创build自签名证书(从SrcSafe到Loki)后主机名已经更改,但是我不确定这是否有所帮助。
另外需要注意的是,当我尝试访问网页时,D:\ Documents and Settings \ Default User \ Application Data \ Subversion \ auth为空,它会创buildsvn.ssl.server,svn.simple,svn.ssl .cient-passphrase和svn.username,但所有这些都是空的。
有任何想法吗?
好的,我明白了。 显然,VisualSVN有一种生成新的自签名证书的方法。 拥有正确的主机名确实有所作为。 此外,存储库设置必须指向单个存储库(例如, https:// loki:8443 / svn / Sandbox ),而不仅仅是svn目录( https:// loki:8443 / svn )。