使用Mechanize在Ruby 1.9和2.0中使用OpenSSL::SSL::SSLError
我遇到了问题,但不知道如何解决 1.9.3 2.0使用Mechanize在Ruby 1.9和2.0中使用OpenSSL::SSL::SSLError,ruby,macos,ssl,mechanize,Ruby,Macos,Ssl,Mechanize,我遇到了问题,但不知道如何解决 1.9.3 2.0 .rvm/gems/ruby-2.0.0-p353/gems/pry-0.9.12.3/lib/pry/pry_class.rb:259:警告:路径中的不安全世界可写目录rvm/gems/ruby-2.0.0-p353/bin,模式040777 .rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:918:在“连接”中:SSL\u connect返回=1 errno=0 state=SSL
.rvm/gems/ruby-2.0.0-p353/gems/pry-0.9.12.3/lib/pry/pry_class.rb:259:警告:路径中的不安全世界可写目录rvm/gems/ruby-2.0.0-p353/bin,模式040777
.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:918:在“连接”中:SSL\u connect返回=1 errno=0 state=SSLv3读取服务器证书B:证书验证失败(OpenSSL::SSL::SSLError)
from.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:918:in'block in connect'
from.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/timeout.rb:52:in'timeout'
from.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:918:in'connect'
from.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:862:in'do_start'
from.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:857:in'start'
from.rvm/gems/ruby-2.0.0-p353/gems/net-http-persistent-2.9.4/lib/net/http/persistent.rb:700:在“开始”中
from.rvm/gems/ruby-2.0.0-p353/gems/net-http-persistent-2.9.4/lib/net/http/persistent.rb:631:in'connection_for'
来自.rvm/gems/ruby-2.0.0-p353/gems/net-http-persistent-2.9.4/lib/net/http/persistent.rb:994:“请求”中的
from.rvm/gems/ruby-2.0.0-p353/gems/mechanize-2.7.3/lib/mechanize/http/agent.rb:259:in'fetch'
from.rvm/gems/ruby-2.0.0-p353/gems/mechanize-2.7.3/lib/mechanize.rb:440:in'get'
从课程3.rb:76:in`'
我通过a=Mechanize.new{a | a | a.ssl_版本,a.verify_模式='SSLv3',OpenSSL::ssl::verify_NONE}解决了这个问题
因为我需要使用Mechanize访问httpsURL您没有修复它,您已经解决了它。除非您使用https只是因为没有其他东西,并且您不关心安全性,否则您永远不应该关闭证书检查。
.rvm/gems/ruby-1.9.3-p484/gems/pry-0.9.12.6/lib/pry/pry_class.rb:258: warning: Insecure world writable dir .rvm/gems in PATH, mode 040777
.rvm/gems/ruby-1.9.3-p484/gems/net-http-persistent-2.9.4/lib/net/http/persistent/ssl_reuse.rb:70:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)
from .rvm/gems/ruby-1.9.3-p484/gems/net-http-persistent-2.9.4/lib/net/http/persistent/ssl_reuse.rb:70:in `block in connect'
from .rvm/rubies/ruby-1.9.3-p484/lib/ruby/1.9.1/timeout.rb:55:in `timeout'
from .rvm/rubies/ruby-1.9.3-p484/lib/ruby/1.9.1/timeout.rb:100:in `timeout'
.rvm/gems/ruby-2.0.0-p353/gems/pry-0.9.12.3/lib/pry/pry_class.rb:259: warning: Insecure world writable dir .rvm/gems/ruby-2.0.0-p353/bin in PATH, mode 040777
.rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:918:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)
from .rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:918:in `block in connect'
from .rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/timeout.rb:52:in `timeout'
from .rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:918:in `connect'
from .rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:862:in `do_start'
from .rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/net/http.rb:857:in `start'
from .rvm/gems/ruby-2.0.0-p353/gems/net-http-persistent-2.9.4/lib/net/http/persistent.rb:700:in `start'
from .rvm/gems/ruby-2.0.0-p353/gems/net-http-persistent-2.9.4/lib/net/http/persistent.rb:631:in `connection_for'
from .rvm/gems/ruby-2.0.0-p353/gems/net-http-persistent-2.9.4/lib/net/http/persistent.rb:994:in `request'
from .rvm/gems/ruby-2.0.0-p353/gems/mechanize-2.7.3/lib/mechanize/http/agent.rb:259:in `fetch'
from .rvm/gems/ruby-2.0.0-p353/gems/mechanize-2.7.3/lib/mechanize.rb:440:in `get'
from course_3.rb:76:in `<main>'