Node.js HTTP Server auf VPS Server aufrufen

Javaris

Mitglied
Hallo, ich versuche zur Zeit mit Node.js Sachen aus zu testen, ich kann etwas Hilfe gebrauchen, bin noch ganz neu dabei.

Ich habe heute ein einfaches HTTP Server Beispiel ausgestet, folgender Code kommt in eine index Javascript Datei und dann startet man die Datei ueber node index.js

Java:
var http = require('http');

http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World!');
}).listen(8080);

Wenn man dann im Browser die Adresse http://localhost:8080 eingibt bekommt man ein "Hello Wordl" im Browser zurueck, ganz simpel und einfach klappt alles.

Jetzt habe ich das ganze auf die gleiche Weise auf ein VPS Server installiert und dort funktioniert es natuerlich auch genauso wie auf meinem PC, aber was ich jetzt machen will ist folgendes, wenn ich auf meinem lokalen PC die IP adresse von meinem VPS Server aufrufe, dann will ich den node.js server erreichen koennen und von ihm die Ausgabe auch bekommen, also zum beispiel folgende Adresse will ich auf meinem lokalen PC im browser eingeben: http://194.84.342.181:8080 also statt localhost gebe ich die IP Adresse vom VPS Server ein.

Im Moment funktioniert es nicht und ich weis nicht genau warum, muss ich in der index.js datei auf dem VPS Server Sachen einbauen und aendern, oder muss man fuer den VPS Server irgendwelche Sachen anders einstellen?
 
K

kneitzel

Gast
Also ohne Angabe einer IP sollte listen doch eigentlich an alle Adapter binden. Ich habe zwar mit node.js und dem http noch nichts gemacht, aber das wäre das übliche Vorgehen.

Was für ein Server hast Du denn da, wo du es laufen lässt? Ich würde da eher auf eine Firewall oder so tippen, die da Verbindungen von außen nicht zuläßt.
 

Javaris

Mitglied
Also ohne Angabe einer IP sollte listen doch eigentlich an alle Adapter binden. Ich habe zwar mit node.js und dem http noch nichts gemacht, aber das wäre das übliche Vorgehen.

Was für ein Server hast Du denn da, wo du es laufen lässt? Ich würde da eher auf eine Firewall oder so tippen, die da Verbindungen von außen nicht zuläßt.
Ich habe ein windows vps server vom Anbieter vps2day. ich kenne mich leider auch nicht aus wie man vps server einstellt.
 

JCODA

Top Contributor
Meistens muss man noch angeben, dass man "mehr als localhost" möchte, zum Beispiel so:

Javascript:
var http = require('http');

http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World!');
}).listen(8080, "0.0.0.0");

Ich habe keine Erfahrung mit node.js, ich habe aber das hier gefunden: https://stackoverflow.com/a/44962707
 

httpdigest

Top Contributor
Also ohne Angabe einer IP sollte listen doch eigentlich an alle Adapter binden.
Korrekt: https://nodejs.org/api/net.html#net_server_listen_port_host_backlog_callback
If host is omitted, the server will accept connections on the unspecified IPv6 address ( : : ) when IPv6 is available, or the unspecified IPv4 address (0.0.0.0) otherwise.
Es ist nicht nötig, die Wildcard-IP Adresse oder die öffentliche IP des Servers anzugeben.

@Javaris Meine Vermutung ist, dass hier einfach eine (default) Firewallregel greift, die erstmal (eventuell) nur SSH zulässt.
Bekommst du denn ein Socket- bzw. Connection Timeout, wenn du dich auf den VPS Server per Browser mit :8080 verbinden willst? Oder was für einen Fehler bekommst du genau?
 

Javaris

Mitglied
Korrekt: https://nodejs.org/api/net.html#net_server_listen_port_host_backlog_callback

Es ist nicht nötig, die Wildcard-IP Adresse oder die öffentliche IP des Servers anzugeben.

@Javaris Meine Vermutung ist, dass hier einfach eine (default) Firewallregel greift, die erstmal (eventuell) nur SSH zulässt.
Bekommst du denn ein Socket- bzw. Connection Timeout, wenn du dich auf den VPS Server per Browser mit :8080 verbinden willst? Oder was für einen Fehler bekommst du genau?

ich habe eben heraus gefunden, das es dann funktioniert wenn ich die Firewall auf dem vps server komplett ausschalte. Also wird es daran liegen.
Jetzt muss ich mich wohl noch etwas genauer einlesen zum Thema Firewal und Ports freigeben, meint ihr als Laie darf man sowas ueberhaupt probieren, ist das nicht zu riskant wenn ich ein Port freigebe und nachher kann jeder irgendwie uebr dieses Port auf dem VPS Server zugreifen?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Wie kann das Problem mit der „CORS-Richtlinie“ gelöst werden, wenn Anfragen vom React-Front-End an das Node.js-Back-End gesendet werden? Angular, React, JQuery - Fragen zu JavaScript 1
Cellsplitter Api auslesen und in Json Datei speichen - Javascript (node js) Angular, React, JQuery - Fragen zu JavaScript 10
H Verknüpfung von Node Command prompt zu Ordner Angular, React, JQuery - Fragen zu JavaScript 0
F Node.js und JavaScript Angular, React, JQuery - Fragen zu JavaScript 3
T Http Request Weiterleitung Angular, React, JQuery - Fragen zu JavaScript 2
W JavaScript Hexadezimalwerte in einem http-Request übergeben Angular, React, JQuery - Fragen zu JavaScript 7
K Von Angular auf Server Variable zugreifen Angular, React, JQuery - Fragen zu JavaScript 3
Zeppi Server soll Daten zurückgeben, die der Client als Variablen nutzt Angular, React, JQuery - Fragen zu JavaScript 1
L JSON-Daten aus einen Server mit fetch holen Angular, React, JQuery - Fragen zu JavaScript 3
C Inhalt als Datei auf Server speichern Angular, React, JQuery - Fragen zu JavaScript 8
J NodeJS-Server - Debbuging ? Angular, React, JQuery - Fragen zu JavaScript 2
H Problem mit vom Server gelieferten Objekten Angular, React, JQuery - Fragen zu JavaScript 11
N Problem - Google Analytics Tracking Javascript Datei von eigenen Server laden Angular, React, JQuery - Fragen zu JavaScript 1
S Fehlerhafte Server-Antwort: 0 Angular, React, JQuery - Fragen zu JavaScript 2
P Variable weitergabe von Server zu Server Angular, React, JQuery - Fragen zu JavaScript 2

Ähnliche Java Themen

Neue Themen


Oben