Node.JS Не работает в Интернете

У меня есть базовое приложение hello world webserver для nodejs на окнах, и оно работает на localhost. Но когда я тестирую его из Интернета, он не может подключиться. Я настроил перенаправление портов в своем маршрутизаторе netgear. Я пропустил здесь шаг, чтобы сделать мой узел nodejs видимым для внешнего мира?

Спасибо.

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/');

Ответ 1

Убедитесь, что вы прослушиваете 0.0.0.0 вместо 127.0.0.1

127.0.0.1 - это частная сеть, видимая только на вашем компьютере. 0.0.0.0 прослушивает все интерфейсы, включая как частные, так и общедоступные (как общедоступные, как это может быть за NAT).

Ответ 2

Похоже, вы привязываете сервер к IP-адресу 127.0.0.1, который является localhost. Если вы хотите получить доступ к нему в другом месте, вам нужно будет установить его на интернет-IP. Проверьте whatismyip.com и используйте этот IP вместо этого.