मेरे लिए, इसका संबंध 3 अप्रैल, 2015 को हुए RDS SSL प्रमाणपत्र रोटेशन से था।
हालाँकि, मेरे मामले में, केवल रूट प्रमाणपत्र का उपयोग करने से काम नहीं चला, और मुझे अपने क्षेत्र के लिए भी एक मध्यवर्ती प्रमाणपत्र का उपयोग करना पड़ा। विवरण:
-
AWS rds कंसोल में जाएं और अपने RDS इंस्टेंस को रीबूट करें।
-
नया रूट प्रमाणपत्र डाउनलोड करें https://s3.amazonaws. com/rds-downloads/rds-ca-2015-root.pem . इसे अपने ऐप के कॉन्फिग डायरेक्टरी में रखें।
-
अपने डेटाबेस क्षेत्र के लिए मध्यवर्ती प्रमाणपत्र डाउनलोड करेंयहां . मुझे यूएस ईस्ट वन का उपयोग करना था, लेकिन आपको अपने क्षेत्र के लिए एक को चुनना होगा।
-
यह महत्वपूर्ण कदम है। आपको इंटरमीडिएट सर्टिफिकेट और रूट सर्टिफिकेट को एक फाइल में मिलाना होगा ताकि इंटरमीडिएट सर्टिफिकेट रूट सर्टिफिकेट से ऊपर हो, एक सर्टिफिकेट चेन बन जाए। टेक्स्ट एडिटर का उपयोग करके इंटरमीडिएट सर्टिफिकेट खोलें, इसकी सामग्री को कॉपी करें, और उन्हें रूट सर्टिफिकेट के ऊपर config/rds-ca-2015-root.pem में पेस्ट करें। इसलिए, आपके द्वारा किए जाने के बाद, config/rds-ca-2015-root.pem मध्यवर्ती प्रमाणपत्र होना चाहिए और उसके बाद रूट प्रमाणपत्र, सभी इस फ़ाइल में होना चाहिए।
-
अपना वर्तमान डेटाबेस url प्राप्त करें
heroku config
और फिर DATABASE_URL प्रॉपर्टी देखें
- नई प्रमाणपत्र फ़ाइल का उपयोग करने के लिए अपने डेटाबेस URL को अपडेट करें। आपको केवल प्रमाणपत्र का नाम बदलना होगा (क्योंकि अब इसे rds-ca-2015-root.pem कहा जाता है)
heroku
config:add DATABASE_URL="mysql2://DB_NAME:[email protected]_URL/DB_NAME?sslca=config/rds-ca-2015-root.pem"
- परिवर्तनों को प्रतिबद्ध करें और हरोकू में पुन:नियोजित करें।