Lightsail AWS Node.js 永远启动

Lightsail AWS Node.js start forever

我正在试用 Vapid CMS,我想将一个新站点上传到我的 Amazon Lightsail 服务器。 Vapid 依赖于 Node.js,我能够将 Vapid 下载到我的帐户并使用我通过 AWS 拥有的静态 IP 地址设置所有内容。

Vapid 的工作方式是,一旦进入根文件夹,您就可以调用 vapid start 。启动服务器并查看您对仪表板的 site/get 访问权限。我设置了它,以便 AWS 服务器的静态 IP 地址重定向到启动 Vapid 时激活的默认 http://localhost:3000

我遇到的主要问题是 Vapid 站点不会长时间保持活动状态。如果我在声明 Vapid 后退出 AWS 终端,几分钟后网站会转到 "Service Unavailable." 有没有办法让那个笨蛋 运行 永远保持下去,这样我的网站就会一直运行到时间结束?

您可以使用 Systemd 来保留您的进程 运行。它将确保 Vapid CMS 进程 运行 并在崩溃后重新启动它。

检查其中一个教程:

虽然 Systemd 或 PM2 可用于在节点进程崩溃时保持 运行ning,但如果您使用 ssh 从终端 运行ning 这些命令,这将不会阻止它关闭访问服务器,然后退出终端。

这是因为终端在关闭时会向进程发送信号挂断命令(SIGHUP)。

防止这种情况的最简单方法是使用 nohup 命令。它是为此目的而设计的。而不是 vapid start 运行:

nohup vapid start &

nohup命令将阻止终端在退出时发送SIGHUP& 命令将在后台 运行 进程,允许您 运行 其他终端命令(例如退出)。