1

我做了以下配置:

  1. 在 Centos 6.4 中,我安装了 redmine 2.3.2、apache2 乘客模块和 SVN 1.7.11。我配置为在 apache 上运行 redmine,到目前为止一切正常。

  2. 在 Windows server 2008 中,我安装了与 SVN 1.7 兼容的 VisualSVN Server。到目前为止,一切都运行良好。

  3. 当我尝试将安装在 windows 服务器上的 svn 与安装 redmine 的 Centos 集成时出现问题,我收到错误消息:

    svn: E230001: 无法连接到 URL ' 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 存储库选项卡的时候得到了上面的异常。

我该如何解决这个问题?任何想法?

4

2 回答 2

1

经过多次测试,我发现问题出在 apache 上,即通过 3000 运行命令 ruby​​ script / rails server webrick -e production 工作正常,但是当通过 apache 运行时出现上述错误。如何在apache中修复它?

问题解决了。进行了以下设置

  1. 文件 /var/www/redmine/lib/redmine/scm/adapter/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
    
  2. 并永久接受证书,所以我做了:

    svn ls --config-dir /tmp/subversion_config --config-option config:auth:store-auth-creds=yes https://xxx.xxx.x.xxx/svn/myrepo/

  3. 添加权限文件夹:

    chown-R apache: apache /tmp/subversion_config

  4. 参考:

    http://www.redmine.org/projects/redmine/wiki/Redmine_203_with_Subversion_and_LDAP_Authentication_(for_Redmine_and_Subversion_through_Redmine)_on_Centos_6_i386_-_detailed

    http://www.redmine.org/issues/787

于 2013-08-28T12:37:57.960 回答
0

确保 VisualSVN 服务器上的证书与其主机名匹配(区分大小写)!--trust-server-cert不会自动接受具有不匹配主机名的证书,因为它被认为是不安全的。

于 2013-08-27T15:23:05.983 回答