У меня проблема с удаленной отладкой nodejs. Я использую Centos на удаленном сервере и phpstorm на моем ПК. Когда я открываю замазку, я набираю команду:
node --debug-brk=5858 main_server.js,
и получить вывод:
прослушивание отладчиком на порту 5858.
Следующее, что я делаю, - это редактирую конфигурацию в phpstorm и выбираю remotehost:8585
. Когда я пытаюсь подключиться, всплывает:
подключение к удаленному серверу:8585
В соединении отказано.
Пока что я добавил порт 8585 и 5858 для брандмауэра centos, добавив в iptables строки:
-A cP-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 5858 -j ACCEPT
-A cP-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 8585 -j ACCEPT
После этого я попробовал другое решение, потому что увидел в документации, что мне нужно настроить переадресацию портов:
yum install balance -yt
balance -df 8585 127.0.0.1.5858
и я попытался перенаправить порт с этой командой:
iptables -t nat -A PREROUTING -p tcp -m tcp -i eth0 --dport 5858 -j DNAT --to 127.0.0.1:5858
Решения, которые я попробовал, были:
- https://stackoverflow.com/questions/13752362/node-js-on-virtualbox-centos-machine-no-connection
- https://stackoverflow.com/questions/8445534/how-to-remote-debug-node-js-with-phpstorm.
Я также открыл порты на локальном сетевом маршрутизаторе и брандмауэре Windows, но я не знаю, поможет это или нет. Какова правильная процедура включения удаленной отладки nodejs на сервере Centos? Какие порты мне нужно открыть и где (удаленный сервер и локальная сеть)? Нужна ли переадресация портов, и если да, что мне нужно сделать, чтобы заставить работать удаленную отладку nodejs?