Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.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 on rails 使用oAuth2 gem和facebook的OpenSSL问题_Ruby On Rails_Ruby_Facebook_Ssl_Oauth 2.0 - Fatal编程技术网

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

Ruby on rails 使用oAuth2 gem和facebook的OpenSSL问题,ruby-on-rails,ruby,facebook,ssl,oauth-2.0,Ruby On Rails,Ruby,Facebook,Ssl,Oauth 2.0,因此,我将一个应用程序从rails 2.2升级到了2.3.12,最后一个问题是facebook connect集成问题 我正在为此使用oauth2 gem,并且我一直得到以下错误 OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed): 我试图按照oauth2 wiki页面上的描述进行操作,但最终出现了另一个错

因此,我将一个应用程序从rails 2.2升级到了2.3.12,最后一个问题是facebook connect集成问题

我正在为此使用oauth2 gem,并且我一直得到以下错误

OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed):
我试图按照oauth2 wiki页面上的描述进行操作,但最终出现了另一个错误,通过分叉项目和修改代码解决了这个错误

我的开发服务器上没有此问题,但仅在生产中有此问题

我的客户端代码如下所示

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文件就在那里 权利还可以


欢迎您提供任何关于从何处开始调试的想法。

已解决

我将这个站点转移到一个运行Debian6.0(sqeeze)而不是5.0(蚀刻)的新服务器上,这就解决了我的问题。我的看法是,我得到了一个更新版本的OpenSSL:

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


我不能保证这就是问题所在,但因为它现在工作时没有代码更改。我想是的。

ruby-ropenssl-e在开发服务器上打印OpenSSL::OpenSSL_版本的内容是什么?在生产中会显示什么?@emboss development OpenSSL 0.9.8l 2009年11月5日生产OpenSSL 0.9.8g 2007年10月19日