Erlaube WebSockets in Google Compute Engine (GCE)

8

Ich verwende Compute Engine (GCE), um meinen Socket-Server mit Socket.IO (Node.js)

zu betreiben

Es funktioniert nur mit Polling. Wenn ich versuche, einen Webclient zu verwenden, erhalte ich diesen Fehlercode:

%Vor%

Was mache ich falsch? Ist es ein GCE-Konfigurationsproblem?

    
rcmcastro 15.12.2015, 07:30
quelle

2 Antworten

5

Sie können die Domäne myapp-socket.appspot.com in Ihrem Skript nicht verwenden, wenn Sie WebSockets verwenden. Stattdessen müssen Sie die externe IP-Adresse der GCE-Instanz verwenden und direkt eine Verbindung zu dieser herstellen, indem Sie alle Firewall-Ports öffnen, die Sie möglicherweise verwenden.

Ich glaube, dass der Datenverkehr zur appspot.com-Domain auch über Frontend-Webserver läuft und socket.io eine direkte Verbindung zum Server benötigt.

    
Jeff Deskins 15.12.2015 14:46
quelle
1

Die virtuellen Computer in Google Compute Engine haben Port 80 für http und Port 443 für https. Die Verwendung dieser Ports für Web-Sockets löste das Problem.

    
Newton Joshua 10.11.2017 02:44
quelle