Stworzyłem websocket PHP używając Ratchet. Ten Websocket działa na porcie 8080
mojego wewnętrznego serwera 10.0.4.160
.Nie można połączyć się z websocketem
Próbuję połączyć się z nim ze strony internetowej, na której włączono protokół SSL "używając protokołu https".
Podczas próby połączenia się z websemocket z przeglądarki FireFox, otrzymuję problemy bezpieczeństwa z przeglądarki, ponieważ miksuję połączenie zabezpieczone/niezabezpieczone. To jest błąd, który widzę w konsoli javascript.
SecurityError: The operation is insecure.
Aby rozwiązać ten problem zabezpieczeń utworzonego stunnel proxy, który pozwala mi zaakceptować połączenie na 10.0.4.160:58443
i podłączyć go do portu 127.0.0.1:8080
. Ten bezpieczny tunel powinien pozwolić mi zachować połączenie z zabezpieczonym websocket i ominąć kontrolę bezpieczeństwa przeglądarki.
Jednak za każdym razem staram się połączyć z websocket pojawia się błąd
WebSocket connection to 'wss://10.0.4.160:58443/' failed: Error in connection establishment: net::ERR_TIMED_OUT
ten skrypt jQuery, który jest używany do łączenia się z websocket
<script>
$(function(){
if ("WebSocket" in window)
{
var conn = new WebSocket('wss://10.0.4.160:58443');
conn.onopen = function(e) {
console.log("Connection established!");
showMessage('Connected', 0);
};
conn.onmessage = function(e) {
console.log(e.data);
showMessage(e.data, 1);
};
conn.onclose = function(e) {
console.log(e.code);
console.log(e.reason);
};
conn.onerror = function(e) {
console.log(e);
};
} else {
console.log('Your browser does not support Websocket!');
}
function showMessage(msg, append){
if(append){
$('#status').append('<br>' + msg);
return;
}
$('#status').text(msg);
}
});
</script>
Oto mój obecny Konfiguracja stunneli
[websockets]
client = yes
accept = 58443
connect = 8080
verify = 2
CAfile = ca-certs.pem
debug = 7
OCSPaia = yes
Jak mogę połączyć się z websocketem z przeglądarki? Dziękuję
Głosowanie w dół, aż zobaczymy, że twój serwer PHP jest skonfigurowany za pomocą mechanizmu zapadkowego –