Eröffnung der port 3000 EC2, Amazon web services
Ich versuche, mit nodejs und socket.io zu liefern, eine webapp, die websocket auf port 3000.
Habe ich geöffnet-port 3000 auf meiner EC2-Instanz in meinem management-Konsole hinzufügen, die eingehende TCP-Regel, um die entsprechenden security Gruppe, aber ich kann immer noch nicht zugreifen, es über public dns auf meinem browser.
sudo netstat -tulpn nicht zeigen, es als einen offenen port.
Was bin ich? Gibt es irgendein service, den ich neu starten müssen oder eine Befehlszeile muss ich drücken, um es auszuführen?
Dank
- Haben Sie diese jemals aufgelöst werden? Ich suchte alle über das internet, ohne Erfolg. Ich landete mit port 8080 in meinem nodejs-app anstelle von 3000, die Feste meine Probleme. Aber warum in der Welt habe port 3000 nicht funktioniert?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Befehl netstat zeigen wird, was alle ports zugehört wird durch "einige" - Prozess. Also in diesem Fall, wie Sie erwähnt haben, Es scheint, dass Sie die Anwendung nicht lauscht auf port 3000.
Erste, fixieren Sie Ihre Anwendung und stellen sicher, dass es lauscht auf port 3000.
Auch
netstat
hat nichts damit zu tun, ob ein port geöffnet/geschlossen, aus firewall-Sicht. Es wird Ihnen sagen, ob ein port ist inLISTENING
- Modus, indem einige Prozess.Gehen Sie folgendermaßen vor:
netstat -anp | grep 3000
auch
telnet 127.0.0.1 3000
ODER deaktivieren Sie die lokale firewall zu tun, einen kurzen test (
service iptables stop
). für linux, es ist in der Regeliptables
Bitte Folgen Sie der oben genannten 3 Punkte und lassen Sie uns wissen, wenn Sie immer noch vor dem gleichen Problem.
Ich denke mal Sie Ihre änderungen mithilfe der AWS Management console.
Aber das bedeutet nur, dass Amazon das system lässt die Nachricht auf port 3000 durch Ihre eigenen Sicherheitssysteme zu Ihrem server.
Ihre EC2-server (Sie müssen nicht sagen, ob es Windows oder Linux) kann seine eigene firewall-system, das Sie haben, öffnen Sie port 3000 auf. Sie werden sehen, bei der Dokumentation für Ihren server an, welche Einstellungen Sie ändern müssen.
Ich nehme an, Sie haben versucht, öffnen Sie einen browser auf Ihrer EC2-Instanz, und Sie können den Zugriff auf die webapp von dort.
Auch, quer denken, wenn es keine anderen web-Servern, die auf Ihren EC2-server, warum nicht ändern Sie Ihre node.js webapp zur Verwendung von port 80?
Hatte ähnliches problem, aber ich war mit socketio mit SSL
Aber die Tasten waren falsch, so, obwohl mein AWS-Sicherheit getan wurde, iptables klar und nginx, die mit client-js-Datei, die Anfrage gehalten schließen. Also bei Firefox hab ich net::ERR_CONNECTION_CLOSED und schließlich herausgefunden, dass es möglicherweise den SSL-Fehler.
zusätzlich zu all den oben genannten Schritte, überprüfen Sie, ob ufw (unkomplizierte firewall) einrichten.
zu prüfen, ob ufw läuft:
wenn es ausgeführt wird,
zu erlauben port 3000 einfach den Befehl
dies löste das problem für mich. ich vergaß, dass ich hatte setup ufw eine Weile zurück, und vor kurzem angefangen mit meinem aws-Instanz erneut.