首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ruby-1.9.3上获取OpenSSL::SSL::SSLError来自net(MacOSX10.6)

在ruby-1.9.3上获取OpenSSL::SSL::SSLError来自net(MacOSX10.6)
EN

Stack Overflow用户
提问于 2012-02-15 07:45:34
回答 1查看 886关注 0票数 3

我见过很多人都犯了这个错误,但似乎没有解决办法来解决这个问题:

代码语言:javascript
复制
ruby-1.9.3-p0/lib/ruby/1.9.1/net/http.rb:799:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)

似乎有很多解决方案建议转移证书文件。我已经安装和卸载了宏,自制的,工程。我为github准备好了钥匙。当尝试在github上使用文件调用模板的rails构建时,会发生错误。

系统:MacOSX10.6-最近升级。Ruby1.9.3,也是最近一次升级。Rails 3.2我一直在谷歌上搜索,直到母牛回家,花了几个小时在这个问题上,尽管似乎有几个Q是这样的,我仍然希望有人找到了一个解决方案,但还没有发布。我想我知道为什么会发生- net/http没有找到证书,对吗?但我想不出怎么解决这个问题。提前感谢您的帮助。

编辑:更多信息。在ruby1.9.2中尝试完全相同的构建(rvm使用1.9.2)完成时不会抛出错误。

另一个编辑:我尝试了rvm页面上关于openssl包的所有内容,安装了这个包,并重新安装了ruby-1.9.3,配置标志指向该包。仍然没有joy。

还有一个编辑:似乎有问题的是OpenURI -找不到方法让它知道证书的位置:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-29 12:49:03

我只是直接修改了用于http.rb的MacOS源代码(L:669):

代码语言:javascript
复制
def use_ssl=(flag)
  flag = flag ? true : false
  if started? and @use_ssl != flag
    raise IOError, "use_ssl value changed, but session already started"
  end
  if flag && !@ca_file //added by riceball
    @ca_file = '/opt/local/share/curl/curl-ca-bundle.crt' 
  end

必须先安装

代码语言:javascript
复制
 port install curl-ca-bundle
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9289602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档