Ich habe einen Linux-Server (os: Centos, ip: 192.168.1.100) mit meiner Knoten-App, die ich debuggen möchte.
Aus irgendeinem Grund @office muss ich auf einem Remote-Client arbeiten (IP: 192.168.1.7), da Linux-Server keine GUI/Browser hat.Node.js: Wie kann man remote debuggen?
ich die Anweisung tat folgen Knoten-Inspektoren zu verwenden, ohne Erfolg ...
Hier ist, was ich getan habe:
$ npm --version
2.14.2
$ node --version
v4.0.0
$ npm install -g node-inspector
$ node-inspector --version
Node Inspector v0.12.3
$ node-debug myApp.js
Node Inspector is now available from http://127.0.0.1:8080/?ws=127.0.0.1:8080&port=5858
Debugging `myApp.js`
Debugger listening on port 5858
Dann, wenn ich http://127.0.0.1:8080/?ws=127.0.0.1:8080&port=5858
meinen Client-Browser öffnen , erhalte ich Fehler ERR_ADDRESS_UNREACHABLE
.
Das gleiche Ergebnis, wenn ich meinen Client-Browser zu http://192.168.1.100:8080/?ws=192.168.1.100:8080&port=5858
öffnen.
Wenn (aus Neugier) Ich http://192.168.1.100:5858
öffnen bekomme ich nur:
Type: connect
V8-Version: 4.5.103.30
Protocol-Version: 1
Embedding-Host: node v4.0.0
Content-Length: 0
ich bereits geöffnet habe Port 8080 und 5858 (auf der sicheren Seite zu sein) auf meiner Firewall (in /etc/sysconfig/iptables
ich habe:
...
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5858 -j ACCEPT
...
).
Was vermisse ich?
UPDATE: Nach @aleung Vorschlag, habe ich web-host=0.0.0.0
Flag node-debug
Kommandozeile, ohne großen Erfolg hinzufügen: Ich bekomme ERR_ADDRESS_UNREACHABLE
immer in Browser. Sogar ein telnet 192.168.1.100 8080
von 192.168.1.7
Client Timeout. Stattdessen ein telnet 192.168.1.100 5858
Antworten:
Type: connect
V8-Version: 4.5.103.30
Protocol-Version: 1
Embedding-Host: node v4.0.0
Content-Length: 0
was wahrscheinlich bedeutet, Debugger hört, aber es ist immer noch nicht erreichbar von der Client-Schnittstelle :-(
Dank! Ich nehme an, du meinst --web-host, denn sonst bekomme ich 'Kann nicht starten web-host = 0.0.0.0: nicht gefunden: web-host = 0.0.0.0 '... Allerdings, obwohl Ihr Vorschlag sehr vielversprechend aussieht, behalte ich Im Browser erscheint 'ERR_ADDRESS_UNREACHABLE' (nach einigen Sekunden) ... :-( – MarcoS
Beachten Sie, dass --web-host = 0.0.0.0 den Job zu erledigen scheint, da netstat mir sagt, dass der Knoten jetzt auf 0.0.0.0:8080 hört, statt 127.0.0.1:8080 ... – MarcoS
@MarcoS Es ist '-Web-Host', behoben. – aleung