关闭命令提示符后保持服务器活动(使用 forever 或 forever-monitor)

keep server alive after closing command prompt (with forever or forever-monitor)

我正在使用 Amazon WS 测试一些基本的 nodejs 服务器。我遇到的问题是,当我关闭 PC 上的 putty 命令提示符时,我无法再使用浏览器访问服务器。

我读到了永远和永远的监控。我不确定为什么必须不断重新启动脚本,但好吧,我们假设它必须。

我都在用

forever "/home/ec2-user/myApp.js"

node "/home/ec2-user/foreverMonitor.js"

(后者在foreverMonitor.js文件中有myApp.js引用。类似于Where place forever-monitor code?。)

两者都启动了服务器,但是当我关闭 putty 时,两者都让服务器死机了。

我在这里错过了什么?

------------------------------------更新------ ------------------------------

我想我也可以跳过foreverMonitor(尚未验证)

nohup forever "/home/ec2-user/myApp.js" &
forever stop "/home/ec2-user/myApp.js"

------------------------------------更新------ ------------------------------

工作,现在使用这个

nohup forever "/home/ec2-user/foreverMonitor.js" &
forever stop "/home/ec2-user/foreverMonitor.js"

我对 AWS 不是很熟悉,但看来您可能需要 运行 nohup。执行命令后,尾随的 & 号应该可以让您立即再次控制终端。

$ nohup forever "/home/ec2-user/myApp.js" &
$ nohup node "/home/ec2-user/foreverMonitor.js" &

有关 nohup 和尾随符号的更多详细信息,请参阅此答案:

看看PM2https://github.com/Unitech/pm2

使用forever成功后,我换到了pm2。

forever 工作正常,但我发现 PM2 更适合我的心智模型。 PM2 也有一个非常简洁(并且快速发展)的 Web 界面,您可以在其中监视和控制节点实例。作为奖励,您还可以 运行 PM2

下的非节点任务