1
我得到这个错误:的OpenSSL :: SSL :: SSLError - 所以SSL_connect返回= 1个错误号= 0状态= SSLv3的读取服务器证书B:证书验证失败
OpenSSL::SSL::SSLError
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, 'MY_APPID', 'SECRET', {:scope => 'publish_stream,email', :client_options => {:ssl => {:ca_path => "#{Rails.root}/config/cacert.pem"}}}
end
行动:
def callback
session['fb_auth'] = request.env['omniauth.auth']
session['fb_token'] = session['fb_auth']['credentials']['token']
session['fb_error'] = nil
render :text => request.env['omniauth.auth'].to_yaml
end
我一直在尝试了一些解决方案,像这样的问题:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, 'MY_APPID', 'SECRET', {:scope => 'publish_stream,email', :client_options => {:ssl => {:verify => false}}}
end
和
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, 'MY_APPID', 'SECRET', {:scope => 'publish_stream,email', :client_options => {:ssl => {:ca_path => "#{Rails.root}/config/ca-bundle.crt"}}}
end
其中CA-包是:http://certifie.com/ca-bundle/ca-bundle.crt.txt
Rails.application.config.middleware.use OmniAuth::Builder do
provider :facebook, 'MY_APPID', 'SECRET', {:scope => 'publish_stream,email', :client_options => {:ssl => {:ca_path => "#{Rails.root}/config/cacert.pem"}}}
end
其中cacert.pem是:http://curl.haxx.se/ca/cacert.pem
我使用Windows 7是否有人对此有解决方案或我做错了什么。 .pem
和.crt
之间有什么不同?
嘿,你的问题解决了吗?如果是,请接受正确答案。如果没有正确的答案,请添加解决方案,以便每个人都能从中受益。 – RAJ 2015-07-16 10:43:48
问题就像3岁,不记得我是否可以使用答案。恰当地,否则我会接受它。 – 2015-07-18 19:34:52