2015-10-15 11 views
6

मैं लिनक्स सेंटोस 6.6 पर सुरक्षित वेबस्केट कनेक्शन के लिए टॉरनाडो वेबसर्वर चला रहा हूं। मैं "wss: //191.23.4.56/etr/job" जैसे यूआरएल खोलकर QWebsocket का उपयोग करके कनेक्ट करने के लिए क्यूटी/सी ++ क्लाइंट का उपयोग कर रहा हूं। मुझे त्रुटि मिल रही है, "एसएसएल सॉकेट इस प्लेटफ़ॉर्म में समर्थित नहीं हैं" इस त्रुटि के बारे में क्या त्रुटि है?एसएसएल सॉकेट त्रुटि समर्थित नहीं है

+0

क्या किसी को भी इसी तरह की त्रुटि मिली है? मेरा क्यूटी क्लाइंट विंडोस 7 पर चल रहा है। – gaj

उत्तर

4

त्रुटि संदेश "SSL सॉकेट इस मंच में समर्थित नहीं हैं"QWebSocket::open() द्वारा मुद्रित जब यूआरएल स्कीम wss और QSslSocket::supportsSsl() रिटर्न false है।

स्थिर सदस्य समारोह QSslSocket::supportsSsl(): इस मंच एसएसएल समर्थन करता है तो

रिटर्न सच; अन्यथा, झूठी वापसी करता है। यदि प्लेटफ़ॉर्म SSL का समर्थन नहीं करता है, तो सॉकेट कनेक्शन चरण में विफल हो जाएगी।

यह आपकी मुख्य समस्या है। अब हमें यह पता लगाना होगा कि क्यों Qt सोचता है कि एसएसएल मंच द्वारा समर्थित नहीं है।

यदि आपने क्यूटी को बाइनरी पैकेज के रूप में डाउनलोड किया है तो फंक्शन supportsSsl() आवश्यक पुस्तकालयों को libssl और libcrypto गतिशील रूप से लोड करने का प्रयास करता है।

उन पुस्तकालयों समारोह supportsSsl() रिटर्न false लोड नहीं किया जा सकता है।

यह संभव है कि libssl आपके सिस्टम में स्थापित नहीं है। यदि आप अपने सिस्टम में लाइब्रेरी बाइनरी पा सकते हैं, लेकिन वे क्यूटी द्वारा लोड नहीं होते हैं तो यह संभव है कि आपकी बाइनरी libssl और/या libcrypto बाइनरी क्यूटी के साथ संगत नहीं हैं।

ऐसे मुद्दों से बचने के लिए आप अपना खुद का क्यूटी बना सकते हैं। उदाहरण के लिए, Qt-5.5.1 बनाने का एक नया निर्देश है। -openssl-linked कॉन्फ़िगरेशन स्विच के साथ चाल पर ध्यान दें। यह रनटाइम पर गतिशील लोडिंग के बजाय ओपनएसएसएल पुस्तकालयों के क्यूटी 5 पुस्तकालयों में एकीकरण को सक्षम बनाता है।

संबंधित मुद्दे