पर काम नहीं करता है मेरे पास एक वेबसाइकिल गैर सुरक्षित एप्लिकेशन है। लेकिन मेरी वेबसाइट https का उपयोग करती है और मुझे यह सुनिश्चित करने के लिए फ़ायरफ़ॉक्स से बचने के लिए एक सुरक्षित वेबसॉकेट कनेक्शन की आवश्यकता है कि कनेक्शन असुरक्षित है।सुरक्षित वेबसॉकेट (wss: //) फ़ायरफ़ॉक्स
मैं अपने वेबसॉकेट सर्वर के लिए पीएचपी 5.2.9 के साथ php-websocket-server का उपयोग कर रहा हूं, इसलिए जब मैं वेबसॉकेट सुरक्षित का उपयोग करता हूं तो मैं openssl_decrypt फ़ंक्शन के साथ पैकेट को डिक्रिप्ट नहीं कर सकता।
:इसलिए मैं आदेश WSS का उपयोग कर, कि मैं 54321 बंदरगाह के लिए 12345 बंदरगाह एक सर्वर WebSocket करने के लिए ग्राहक WebSocket आबद्ध करने के लिए ग्राहक द्वारा भेजे गए पैकेट डिक्रिप्ट करने के लिए में stunnel इस्तेमाल किया है, तो मैं सर्वर मोड में एक stunnel जोड़ा
[wsServer]
accept = 12345
connect = 192.168.1.227:54321
इस कॉन्फ़िगरेशन के साथ मेरा एप्लिकेशन https + wss के माध्यम से क्रोम पर ठीक काम करता है। लेकिन फ़ायरफ़ॉक्स पर हैंडशेक के दौरान कोई समस्या है, ऐसा लगता है कि Sec-WebSocket-Version
और Sec-WebSocket-Key
शीर्षलेख में अनुपलब्ध हैं। मुझे समझ में नहीं आता क्योंकि यह फ़ायरफ़ॉक्स पर http + ws के माध्यम से काम करता है।
आपकी मदद के लिए अग्रिम धन्यवाद।
संपादित करें: मैंने पोर्ट 12345 पर प्रमाण पत्र के लिए अपवाद जोड़ा है, अब हैंडशेक अच्छी तरह से चल रहा है क्योंकि मुझे लगता है कि फ़ायरफ़ॉक्स में अब Sec-WebSocket-Key
है।
फ़ायरफ़ॉक्स (क्रोम अनुरोध से भी बड़ा) के साथ काम हैडर का अनुरोध:
GET/HTTP/1.1
Host: 192.168.1.227:12345
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:14.0) Gecko/20100101 Firefox/14.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/;q=0.8
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: keep-alive, Upgrade
Sec-WebSocket-Version: 13
Origin: https://192.168.1.227
Sec-WebSocket-Protocol: HyBi-00
Sec-WebSocket-Key: 65nHN33M6drIPjQHcGK8pA==
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket
यदि आप काम करने वाले और गैर-कामकाजी मामले के लिए दोनों दिशाओं में वास्तविक शीर्षलेख/हैंडशेक दिखा सकते हैं तो शायद मैं जल्दी से पहचान कर सकता हूं कि समस्या क्या है। – kanaka