如何用PHPStorm远程debuggingNode JS?

我有一个窗口框和一个运行CentOS的虚拟机。 有谁碰巧知道如何使用PHPStormdebugging节点CLI脚本(不打开端口)? “编辑configuration”似乎只支持连接到某处而不是侦听传入的连接。

确保你已经安装了nodejs插件 。

如果您的服务器有可用的平衡器包(我的EC2盒没有),您可以使用本教程用平衡器转发端口。

yum install balance -yt balance -df 8585 127.0.0.1.5858 

许多人报告成功与iptablesredirect从eth0到洛(不适合我)这样的:

 iptables -t nat -A PREROUTING -p tcp -m tcp -i eth0 --dport 5858 -j DNAT --to 127.0.0.1:5858 

在这个eclipsedebugging工具 (接近底部)中还有一个简单的节点脚本,它将把本地debugging通过隧道传输到远程主机。

但是一旦我走到了这条路上,我并不认为我熟悉SSH。 所以最终, 我走了一个SSH隧道,并设置PHPStormdebugging本地主机。 SSH隧道使用腻子

PHPStorm配置

对于非Windows用户,以下是如何使用ssh设置端口转发隧道:

 ssh -f ssh_user@your-remote-host -L local_port:localhost:port_on_remote -N 

这意味着“ssh到your-remote-host ,login为ssh_user 。一旦打开连接到localhost:port_on_remote并在运行ssh的机器的local_port处公开此连接”。

非显而易见的部分是你需要使用localhost ,因为节点的debugging器只绑定本地IP地址(而不是your-remote-host可以解决的地址)。

具有实际值的示例:

 ssh -f me@nodeserver.com -L 5858:localhost:5858 -N 

(根据这个howto ,只花了一些时间来弄清localhost部分)。