###前提・実現したいこと
Ruby 2.3.0でSSL接続をしたいのですが下記のようなメッセージが出てきてどうしても止まってしまいます。
###発生している問題・エラーメッセージ
C:/Ruby23-x64/lib/ruby/2.3.0/net/http.rb:933:in `connect_nonblock': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError) from C:/Ruby23-x64/lib/ruby/2.3.0/net/http.rb:933:in `connect' from C:/Ruby23-x64/lib/ruby/2.3.0/net/http.rb:863:in `do_start' from C:/Ruby23-x64/lib/ruby/2.3.0/net/http.rb:852:in `start' from C:/Ruby23-x64/test.rb:15:in `<main>'
###該当のソースコード
Ruby
1puts '-'*80 2require 'net/http' 3require 'openssl' 4require 'logger' 5CERT_NOT_FOUND="CERT not found." 6cert=File.expand_path(__FILE__+'\..\ca-bundle.crt') 7raise CERT_NOT_FOUND if !File.exist?(cert) 8ENV["SSL_CERT_FILE"] = File.expand_path(__FILE__+'..\ca-bundle.crt') 9url = URI.parse('https://google.jp/search') 10puts url 11req = Net::HTTP::Get.new(url.path) 12http = Net::HTTP.new(url.host, url.port) 13http.use_ssl = true 14http.verify_mode = OpenSSL::SSL::VERIFY_PEER 15http.ca_file = ENV["SSL_CERT_FILE"] 16http.start {|http| 17 res = http.request(req) 18} 19puts res.body
###試したこと
ENVをca-bundle.crtに設定→変わらず
http.ca_fileをENVに設定→変わらず
###補足情報(言語/FW/ツール等のバージョンなど)
Win7 / ファイルはC\Ruby23-x64\test.rb
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。