Nano Hash - криптовалюты, майнинг, программирование

Как предотвратить ошибку SSL в окнах Ruby

версия ruby: ruby ​​2.2.4p230 (2015-12-16, редакция 53155) [i386-mingw32]

Ошибка: OpenSSL::SSL::SSLError: SSL_connect return=1 errno=0 state=SSLv3 прочитал сертификат сервера B: проверка сертификата не удалась

Код, используемый для теста:

url = URI.parse("https://www.google.com/")
http = Net::HTTP.new(url.host, url.port)
http.open_timeout = 10
http.read_timeout = 10
path = url.path
path = '/' if path == ''
path += '?' + url.query unless url.query.nil?
http.use_ssl = true
request = Net::HTTP::Get.new(path, nil)
response = http.request(request)
puts response.inspect

Я попробовал около 2 страниц решений Google и жемчужину, где я только что отправил проблему: https://github.com/liveeditor/net_http_ssl_fix/issues/2

Я пробовал вручную добавлять сертификат, добавлять переменные среды, драгоценные камни, которые утверждают, что это исправляют, и все другие решения на первых двух страницах Google.

Пожалуйста, дайте мне знать, какая дополнительная информация требуется, чтобы помочь мне исправить это!

09.08.2016

Ответы:


1

Попробуйте это решение:

https://gist.github.com/fnichol/867550

По сути, загрузите файл cacert.pem. Затем установите системную переменную env SSL_CERT_FILE в местоположение.

Хотя это решение сработало для меня несколько месяцев назад, недавно у меня было обновление Windows как на моем ноутбуке, так и на рабочем столе, и это приводит к этой проблеме, когда я использую open_uri.

Дайте мне знать, как это сработало для вас.

12.08.2016
  • Спасибо за участие, я читал о многих людях, для которых это решение сработало, поэтому я бы порекомендовал всем попробовать его, но для меня это не сработало, и я попробовал его с двумя последними версиями рельсов. 19.08.2016
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..