Я везде искал ответ на этот вопрос, но мне не повезло.
Я установил node.js на моем сервере. Я создал стандартный пример "Hello World", например:
var http = require('http');
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello World\n');
}).listen(8080, "0.0.0.0");
console.log('Server running at http://0.0.0.0:8080/');
После запуска скрипта на сервере:
node app.js
Я могу подключиться внутренне к порту 808 и увидеть сообщение Hello World
, но когда я пытаюсь подключиться к порту 8080 моего сервера извне, я получаю ошибку «Не удается подключиться к серверу». Я также пробовал это в моей функции прослушивания:
etc..
}).listen(8080, "204.xxx.xxx.xxx");
(с моим реальным внешним IP-адресом) и не повезло.
Я пытался принимать соединения на 8080, добавив это в iptables:
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
но все же врезался в стену. Когда я запускаю netstat, я получаю:
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN -
, который, как мне кажется, говорит мне, что порт 8080 прослушивает соединения.
Итак - что я здесь не так делаю?