OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
Este es un error común cuando se trabaja con APIs que están detrás de un protocolo HTTPs. La solución para arreglar este error en windows consiste en seguir los siguientes pasos.
1. Descargar este archivo: http://curl.haxx.se/ca/cacert.pem
2. En tu proyecto > lib guardas ese archivo con “guardar como..” y le pones este nombre: ca-bundle.crt
3. Luego abres tu editor de texto favorito, el mío es Sublime y en tu proyecto >config >initializers
4. Dentro de carpeta “initializers” creas un archivo llamado fix_ssl.rb
5. Pega este código a continuación: (Screenshot)
require 'open-uri'
require 'net/https'
module Net
class HTTP
alias_method :original_use_ssl=, :use_ssl=
def use_ssl=(flag)
self.ca_file = Rails.root.join('lib/ca-bundle.crt').to_s
self.verify_mode = OpenSSL::SSL::VERIFY_PEER
self.original_use_ssl = flag
end
end
end
Luegos reinicias el Server por consola con rails s
PD: si revisas el ejemplo con el artículo original certificados de seguridad de Ruby te darás cuenta de un pequeñísimo cambio en la línea 9
original:
1 self.ca_file = Rails.root.join(‘lib/ca-bundle.crt’)
modificación:
self.ca_file = Rails.root.join(‘lib/ca-bundle.crt’).to_s
Este cambio se debe a que Rails 4 necesita este recibir este valor como un string o dará como error
error+no implicit conversion of Pathname into String
- Friendly URL en Rails - March 8, 2015
- Borrar un Scaffold en Ruby on Rails - January 24, 2015
- “My Concerts Wishlist” ajax scaffold Ruby on Rails - January 1, 2015
- StreetmusicMap parte 2: Integración Gmaps4Rails - December 12, 2014
- StreetmusicMap parte 1: Combobox uno a muchos en Ruby on Rails - December 11, 2014
- Twitter Search API + Ruby on Rails (II parte) - September 24, 2014
- Twitter Search API + Ruby on Rails - September 24, 2014
- SSL error: Certificate Verify Failed - September 18, 2014