दिलचस्प पोस्ट
ASP.NET WebForms की तुलना में, एएसपी.नेट एमवीसी पृष्ठ का 'पृष्ठ जीवन चक्र' क्या है? Microsoft.WebApplication.targets नहीं मिला, बिल्ड सर्वर पर। आपका समाधान क्या है? आप सी में एक हेक्साडेसिमल स्ट्रिंग में एक बाइट सरणी कैसे परिवर्तित करते हैं? jquery json स्ट्रिंग करने के लिए? ListView OnItemClickListener जवाब नहीं है? उपयोगकर्ता पाठ चयन के बगल में मैं एक तत्व कैसे रख सकता हूं? एंड्रॉइड में एक छवि कैसे फसल करें? क्या लैम्ब्दास की तुलना करने का कोई तरीका है? NSFileManager.defaultManager ()। FileExistsAtPath सही के बजाय झूठी देता है पीडीएफ के शीर्ष पर <div> परत क्या ऐरे के साथ अनूठा_पीटआर के लिए कोई फायदा है? Ctrl और कर्सर कुंजियों को मारते समय विजुअल स्टूडियो को कैमेल कैस को समझें पृष्ठ लोड पर ब्राउज़र ज़ूम स्तर कैसे बढ़ाएं? पिकासो v / s Imageloader v / s फ्रेस्को वि ग्लाइड सभी सामान्य अपरिभाषित व्यवहार क्या हैं जो एक सी ++ प्रोग्रामर के बारे में जानना चाहिए?

Windows पर "प्रमाणपत्र सत्यापित करना विफल" को कैसे हल करें?

मैं Google सेवाओं के लिए OAuth के लिए साइनसेट का उपयोग करने का प्रयास कर रहा हूं और यह त्रुटि प्राप्त करें:

SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed 

इन सवालों के बाद:

  • SSL_connect = = errno = 0 state = SSLv3 पढ़ा सर्वर प्रमाण पत्र बी: प्रमाण पत्र सत्यापित करने में विफल
  • OmniAuth और Facebook: प्रमाण पत्र सत्यापित करना विफल हुआ

ऐसा लगता है कि समाधान या तो ca_path को ठीक ca_path या SSL के लिए VERIFY_NONE सेट VERIFY_NONE है

ca_path फ़िक्स को केवल लिनक्स (पोर्ट VERIFY_NONE ) पर काम करता है और VERIFY_NONE लिए VERIFY_NONE लगता है

क्या विंडोज / सिग्नेट रत्न के लिए कोई हल है?

वेब के समाधान से एकत्रित समाधान "Windows पर "प्रमाणपत्र सत्यापित करना विफल" को कैसे हल करें?"

दरअसल सबसे अच्छा तरीका है कि मैं इसे रूबी के लिए खिड़कियों में ही हल कर पाया, न सिर्फ एक मणि, यह करने के लिए है:

  1. डाउनलोड करें https://curl.haxx.se/ca/cacert.pem c: \ railsinstaller \ cacert.pem में सुनिश्चित करें कि आप इसे एक .pem फ़ाइल के रूप में सहेजते हैं, पाठ फ़ाइल के बजाय।
  2. अपने कंप्यूटर पर जाएं -> उन्नत सेटिंग्स -> पर्यावरण चर
  3. एक नया सिस्टम चर बनाएँ:

    वेरिएबल: SSL_CERT_FILE मान: C: \ RailsInstaller \ cacert.pem

  4. अपनी सभी कमांड प्रॉम्प्ट बंद करें, जिसमें आपके रेल सर्वर कमांड प्रॉम्प्ट आदि शामिल हैं।

  5. एक नई रूबी आईआरबी प्रॉम्प्ट प्रारंभ करें, और निम्नलिखित की कोशिश करें:

     $irb>require 'open-uri' $irb>open('https://www.gmail.com') 

यह सब अब ठीक काम करना चाहिए।

विंडोज के लिए समाधान, जिसे मैं कुछ अलग-अलग जवाबों से मिला था:

  1. https://curl.haxx.se/ca/cacert.pem डाउनलोड करें और उसे YOUR_APP / lib / assets (या जहाँ भी)
  2. Config / initializers / omniauth.rb में :

      #config/initializers/omniauth.rb Rails.application.config.middleware.use OmniAuth::Builder do provider :facebook, CUSTOMER_KEY, CUSTOMER_SECRET, {client_options: {ssl: {ca_file: Rails.root.join('lib/assets/cacert.pem').to_s}}} end 
  3. जाहिर है, अपने सर्वर को पुनरारंभ करें

पाद टिप्पणियां : आप आकार को कम करने के लिए cacert.pem फ़ाइल में बहुत अधिक अनावश्यक प्रमाण पत्र काट कर सकते हैं। यदि आपको केवल विकास के लिए इस समाधान की ज़रूरत है, तो आप फ़ाइल को अपनी प्रोजेक्ट के बाहर से बचा सकते हैं और if Rails.env.development? client_options के साथ _provider पंक्ति hash_other _provider पंक्ति बिना client_options हैश_ end

बहुत अधिक खोज और व्यर्थ समय के बाद, मुझे विंडोज़ के साथ रूबी में इस मुद्दे को ठीक करने के लिए एक बहुत आसान समाधान मिला।

दो सरल कदम:

  1. कमांड प्रॉम्प्ट में लिखें: C:\gem install certified

  2. अपने rb फ़ाइल में जोड़ें: require 'certified'

बस।

Rubygems पैकेज प्रबंधन ढांचे को अद्यतन करने के लिए विंडोज 7 पर मेरे लिए इस मुद्दे को हल किया।

https://rubygems.org/pages/download

 gem update --system # may need to be administrator or root 

हाँ, मैंने आरंभिक फ़ोल्डर में omniouth.rb फ़ाइल को इस पर सेट कर दिया है:

 provider :facebook, FACEBOOK_KEY, FACEBOOK_SECRET, {:client_options => {:ssl => {:verify => false}}} 

और यह अभी ठीक काम करने लगता है लेकिन इसका उपयोग उत्पादन के लिए नहीं है

Https: // के बजाय http: // यूआरएल का उपयोग करना आपके लिए आसान बनाते हैं

अपने रूबी कमांड लाइन पर कमांड लाइन का उपयोग करके मृदा स्रोत को http://rubygems.org/ पर बदलें

 gem sources -a http://rubygems.org/ 

डाउनलोड करें rubygems-update डाउनलोड पेज: https://rubygems.org/gems/rubygems-update

डाउनलोड लिंक पर क्लिक करें, और आप rubygems-update-2.6.7.gem नामक फ़ाइल डाउनलोड करेंगे। कमांड लाइन पर, उस निर्देशिका को नेविगेट करें, जिसमें आपने .gem फ़ाइल डाउनलोड की है और टाइप करें:

 gem install rubygems-update-2.6.7.gem 

(या जो भी फ़ाइल नाम था, अगर कोई नया संस्करण)

फिर टाइप करें:

 update_rubygems 

आप यह सत्यापित कर सकते हैं कि इसके साथ अपडेट किया गया है:

 gem --version 

देवड्यूड के समाधान पर जोड़ना, लेकिन Windows Powershell का उपयोग करना:

डाउनलोड http://curl.haxx.se/ca/cacert.pem में c: \ railsinstaller \ cacert.pem

पावरशेल्ड संकेत पर:

$env:SSL_CERT_FILE = 'c:\RailsInstaller\cacert.pem'

तब मैं gem update सफलतापूर्वक चलाने में सक्षम था

नोट: आप केवल अपने प्रोफाइल notepad $profile में उस परिवेश चर को परिभाषित कर सकते हैं

मुझे इस त्रुटि के साथ एक विंडोज़ मशीन पर पटरियों 5 स्थापित करने की कोशिश करते हुए, पता चला कि मैं 2.6.2 के लिए रूबीगाम संस्करण को अद्यतन करना पड़ा और फिर यह काम किया।

नीचे से चरण 1 डाउनलोड rubygem

 https://rubygems.org/downloads/rubygems-update-2.6.7.gem 

चरण 2 – डाउनलोड किए गए रूबी गम्स की ओर इशारा करते हुए इंस्टॉल करें

 gem install --local C:\rubygems-update-2.6.7.gem 

चरण 3 – नया संस्करण 2.6.7 है

 gem --version 

चरण 4 – अब रूबी-अपडेट मणि की सुरक्षित रूप से स्थापना रद्द करें

 gem uninstall rubygems-update -x 

चरण 5 ने रेल 5 को फिर से स्थापित करने की कोशिश की

 gem install rails --version 5.0.0 

एक जादू की तरह काम किया!

मुझे यहां से जानकारी मिली: http://guides.rubygems.org/ssl-certificate-update/#installing-using-update-packages

मैं प्रमाणित प्राधिकरण के रूप में प्रमाण पत्र आयात करके ऊपर वर्णित पैट या सिस्टम चरणीय सेटिंग को समाप्त करने में सक्षम था।

  1. Certmgr.msc को आमंत्रित करें
  2. विश्वसनीय रूट प्रमाणपत्र प्राधिकरण फ़ोल्डर को राइट-क्लिक करें
  3. "सभी कार्य" का चयन करें
  4. "आयात करें" का चयन करें
  5. फ़ाइल प्रकार ड्रॉपडाउन में सभी फाइलों का चयन करें और cacert.pem फ़ाइल चुनें।
  6. आपको एक संदेश प्राप्त करना चाहिए "सफलतापूर्वक आयात करें"

मेरा मानना ​​है कि सही जवाब अपने मणि इंस्टॉलर को अपडेट करना है: rubygems-update यह जानने की आवश्यकता क्यों है: एसएसएल प्रमाणपत्र अपडेट

अपने cacert.pmp फ़ाइल को https://curl.haxx.se/ca/cacert.pem से सहेजें और उसके बाद इस फाइल को yourruby- स्थापना फ़ोल्डर \ lib \ ruby ​​\ 2.3.0 \ rubygems \ ssl_certs में जोड़ें

उदाहरण के लिए: C: \ Ruby23 \ lib \ ruby ​​\ 2.3.0 \ rubygems \ ssl_certs

इससे मुझे मदद मिली: https://coderwall.com/p/ubl6iw/fix-ssl_connect-reurned-1-errno-0-state-sslv3-read-server-certificate-b-certificate-verify-failed-openssl-ssl- sslerror रेल परियोजना पर मेरी रूबी आंतरिक रूप से एक एपीआई में डेटा पोस्ट कर रही है, और यह आंतरिक प्रमाण पत्र को सत्यापित नहीं कर सकता है इन पंक्तियों की मदद की गई:

 require 'https' http = Net::HTTP.new('example.com', 443) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_PEER http.cert_store = OpenSSL::X509::Store.new http.cert_store.set_default_paths http.cert_store.add_file('/path/to/internal.cert.pem') 

आशा है कि यह मदद कर सकता है

मैं इस समस्या का सामना कर रहा था जब मैंने पुराने रूबी संस्करणों को स्थापित किया था। जब मैंने नवीनतम रूबी संस्करण स्थापित किया तो यह समस्या दूर चली गई। तो मूल रूप से SSL प्रमाणपत्र को अपडेट किया जाना आवश्यक था

उन लोगों के लिए जो 4 रेल का उपयोग कर रहे हैं

इसे devise.rb में जोड़ें

 require "omniauth-google-oauth2" config.omniauth :google_oauth2, "CLIENT_ID", "CLIENT_SECRET", { access_type: "offline", approval_prompt: "", :client_options => {:ssl => {:verify => false}} }