我做了以下配置:
在Centos 6.4中,我安装了redmine 2.3.2,apache2乘客模块和SVN 1.7.11。我配置为在apache上运行redmine,到目前为止一切都运行良好。
在Windows server 2008中,我安装了与SVN 1.7兼容的VisualSVN Server。到目前为止,一切都运转良好。
当我尝试在安装了redmine的Windows服务器上安装svn时出现问题,我收到错误:
svn:E230001:无法连接到网址“https://xxx.xxx.x.xxx/svn/myrepo”的存储库
svn:E230001:服务器SSL证书不受信任
我已永久接受该证书的文件夹 的/ var / WWW / SVN
我在永久设置文件中指出了证书/ var / www / redmine / lib / redmine / scm / adapters / subversion_adapter.rb
def credentials_string
str =''
str << "- config-dir /var/www/svn - username # {shell_quote (@ login)}" unless@login.blank?
str << "- password # {shell_quote (@ password)}" unless@login.blank? | | @ Password.blank?
str << "- trust-server-cert - no-auth-cache - non-interactive"
str
end
点击选项卡redmine存储库的时间会得到上面的例外。
如何解决此问题?有什么想法吗?
答案 0 :(得分:1)
经过多次测试后,我发现问题出现在apache中,即通过3000命令运行ruby script / rails服务器webrick-e生产工作正常,但是当由apache运行时会出现上述错误。如何在apache中修复它?
问题解决了。进行了以下设置
文件/var/www/redmine/lib/redmine/scm/adapters/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 --non-interactive --config-dir /tmp/subversion_config"
str
end
并永久接受证书,所以我做了:
svn ls --config -dir / tmp / subversion_config --config-option config:auth:store-auth-creds = yes https://xxx.xxx.x.xxx/svn/myrepo/
添加了权限文件夹:
chown -R apache:apache / tmp / subversion_config
参考文献:
答案 1 :(得分:0)
确保VisualSVN Server上的证书与其主机名匹配(它区分大小写)! <{1}}不会自动接受具有不匹配主机名的证书,因为它被认为是不安全的。