Jak skonfigurować websockets z PHP w nginx?Sieci web PHP z nginx przez SSL
Mam spojrzał na tym kursie, ale nie mogę zrobić to praca
https://www.sanwebe.com/2013/05/chat-using-websocket-php-socket
skopiowano trzy pliki do głównego katalogu www
/index.php
/jquery-3.1.1.js
/websocket/server.php
W index.php
zmieniłem URI
var wsUri = "wss://domain.com/websocket/server.php";
W nginx Dodałem ten
http {
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
location /websocket/ {
proxy_pass https://domain.com:9000/websocket/server.php;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
}
http://nginx.org/en/docs/http/websocket.html
Aby uruchomić serwer websocket
php -q /var/www/websocket/server.php
czat znajduje się https://domain.com/chat.php
i ładunku, ale ten błąd na czacie okno Error Occurred - Connection closed
też próbował się połączyć za pomocą tego narzędzia, ale ten błąd
http://www.websocket.org/echo.html
ERROR: undefined
DISCONNECTED
żądanie przez przeglądarkę
wss://domain.com/websocket/server.php
ERR_DISALLOWED_URL_SCHEME
Zakładam, że błąd jest wyświetlany w oknie przeglądarki, nie nginx lub dzienniki PHP. Czy przypadkiem używasz Google Chrome do przetestowania tego (https://productforums.google.com/forum/#!topic/chrome/leVmLPNVISI)? Jeśli tak, spróbuj z inną przeglądarką. –
Tak, błąd występuje w przeglądarce Google Chrome .. Próbowałem również z FF .. Tutaj nawet nie dostaję błędu – clarkk
Spróbuj podsłuchać ruch między klientem a nginx i nginx i php, respectivley, używając np. 'tcpdump', aby sprawdzić, czy konfiguracja działa zgodnie z oczekiwaniami na poziomie sieci. –