ruby-on-rails - 使用 oAuth2 gem 和 facebook 的 OpenSSL 问题

标签 ruby-on-rails ruby facebook ssl oauth-2.0

所以我已经将应用程序从 Rails 2.2 升级到 2.3.12,最后剩下的问题是 Facebook 连接集成问题。

我为此使用了 oauth2 gem,但我不断收到以下错误

OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed):

我尝试按照 oauth2 wiki 页面上的描述进行操作,结果却遇到了另一个错误,该错误已通过 fork 项目和调整代码来解决。 read here .

我的开发服务器上没有问题,但只在生产中出现。

我的客户端代码如下所示

def client  
  ca_file = File.join('/etc/ssl/cacert.pem')  
  @client ||= OAuth2::Client.new( 'app_id', 'app_secret', {  
    :site => {  
      :url=>'https://graph.facebook.com',  
      :ssl=>{  
        :verify => OpenSSL::SSL::VERIFY_PEER,  
        :ca_file => ca_file  
      }  
    },  
    :adapter => :NetHttp  
  })  
  @client  
end  

现在我已经确认了大约一百次,我的 cacert.pem 文件就在那里,而且 权利还可以。

欢迎提出关于从哪里开始调试的任何想法。

最佳答案

已解决

我将此站点移至运行 Debian 6.0 (sqeeze) 而不是 5.0 (etch) 的新服务器上,这解决了我的问题。我对此的看法是我获得了更新版本的 OpenSSL:

Debian 6.0:OpenSSL 0.9.8o 2010 年 6 月 1 日
Debian 5.0:OpenSSL 0.9.8g 2007 年 10 月 19 日

我不能保证这就是问题所在,但因为它现在无需更改代码即可正常工作。我想是的。

关于ruby-on-rails - 使用 oAuth2 gem 和 facebook 的 OpenSSL 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6677404/

相关文章:

ruby-on-rails - Stripe 重复/订阅计费最佳设计/实践?

ruby-on-rails - Rails 3 : How can I find rows in a table that were created today?

ruby-on-rails - Capybara 2.0 和 rspec-rails——助手在规范/功能中不起作用

android - 如何解决 React Native 中的 AppRegistry.registerComponent 错误

ruby-on-rails - Rails 服务器不适用于 mysql2 gem

css - Bootstrap img 高度 : auto property overrides explicit height

javascript - Meteor Facebook 登录错误 Accounts.LoginCancelledError : No matching login attempt found

facebook - 拒绝在框架中显示 facebook.com/xti.php,因为它将 X-Frame-options 设置为 sameorigin

ruby-on-rails - 在 Rails 中使用模块执行错误处理的最佳方式?

ruby - EventMachine - 端口正在使用中