Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 找不到有效的gem';rhc';。SSL\u连接服务器证书验证在Windows上失败,无法连接OpenShift服务器_Ruby_Rubygems_Ssl Certificate_Openshift Client Tools - Fatal编程技术网

Ruby 找不到有效的gem';rhc';。SSL\u连接服务器证书验证在Windows上失败,无法连接OpenShift服务器

Ruby 找不到有效的gem';rhc';。SSL\u连接服务器证书验证在Windows上失败,无法连接OpenShift服务器,ruby,rubygems,ssl-certificate,openshift-client-tools,Ruby,Rubygems,Ssl Certificate,Openshift Client Tools,错误:找不到有效的gem“rhc”(>=0),原因如下: 无法从以下位置下载数据-SSL\u connect返回=1 errno=0 state=SSLv3读取服务器证书B:证书验证失败() 尝试使用以下命令: C:\>gem install rhc 但在尝试设置rhc时仍然存在相同的错误 gem sources -r https://rubygems.org gem sources -a http://rubygems.org 通过遵循rhc,gem已成功安装,但在执行“rhc设置”

错误:找不到有效的gem“rhc”(>=0),原因如下: 无法从以下位置下载数据-SSL\u connect返回=1 errno=0 state=SSLv3读取服务器证书B:证书验证失败()

尝试使用以下命令:

C:\>gem install rhc
但在尝试设置rhc时仍然存在相同的错误

gem sources -r https://rubygems.org
gem sources -a http://rubygems.org
通过遵循rhc,gem已成功安装,但在执行“rhc设置”以连接到openshift时,此处显示的是错误消息,而不是连接到openshift服务器


问题在于,您的Windows计算机无法将rubygems服务器证书识别为受信任的证书,因为Windows的受信任证书存储中没有其授权证书

作为一个快速修复,您需要删除rubygems源URL的HTTPS版本(而不是像您那样的HTTP):

这个快速修复应该使rubygems使用HTTP版本,该版本不涉及证书检查

但是这不应该是最终的解决方案。相反,您应该重新添加HTTPS源(使用
-a
选项),并将rubygems服务器证书的正确CA证书安装到您的windows可信CA证书存储中


在网上(google)有相当多的页面处理此过程,例如,文章中有步骤将所有CA证书从
curl
命令下载并安装到您的Windows计算机,从而永久性地解决问题,而不会降低安全性。

说明了问题的原因和解决方法

以前,此证书由一个证书颁发机构提供,但新证书由另一个证书颁发机构提供

因此,发布了两个证书的RubyGems版本,以简化更改

然而,按照RubyGems的运行规模,不可能确保每个人都更新软件。还有一些旧版本附带的操作系统。因此,有时需要手动干预(如上所述)

这一点已在第1050号问题上进行了描述

要解决此问题,请执行以下步骤:

  • 下载。下载内容应保存在您稍后可以轻松指向的位置。让我们使用C:\rubygems-update-2.6.7.gem

  • 在命令行上,运行以下命令:
    C:\>gem安装--本地C:\rubygems-update-2.6.7.gem

    C:\>更新\u rubygems——无ri——无rdoc

  • 运行以下命令卸载rubygems更新:
    C:\>gem卸载rubygems更新-x


  • 这应该可以解决问题。

    CA证书按照中提供的步骤添加到信任存储中。rhc安装成功,但在执行命令“C:\Users\raju>rhc setup”时出现错误消息:C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/commander-4.2.1/lib/commander/user_interaction.rb:328:警告:constant::TimeoutError不推荐使用。试图关闭和打开命令提示符,试图删除和添加,但没有正确执行。@Vivaswan,这只是一个警告,不是错误,因此rhc gem现在似乎已正确安装。如前所述,rhc gem已成功安装,但是,当尝试连接openshift服务器时,会显示错误消息。无法连接服务器。啊哈,现在我看到了屏幕截图,这似乎是另一个不相关的错误,可能对您有所帮助。在第一条评论中,粘贴了相同的错误消息。无法将错误截图粘贴到评论中,因此将其添加到问题中,以清晰显示错误消息。让我看看这个解决方案是否有效。
    rhc setup
    
    gem sources -r https://rubygems.org