node.js - 使 Node 服务器重启证明

标签 node.js ubuntu cron forever

我现在拥有的是一个 Node 服务器(在 forever.js 中有 Ubuntu 14.04 LTS ),每次服务器 PC 启动时都需要启动它。

因此,要做到这一点,我们需要的是这个命令(每次电脑启动或重新启动时)-

forever start /var/www/websocket/websocket.js

如果我在直接命令行中运行此命令,它工作正常。

但我希望它在服务器 PC 打开或重新启动时自动启动。

所以我所做的(根据https://stackoverflow.com/a/13388741/2193439)是-

运行crontab -e并将此代码放入控制台-

@reboot forever start /var/www/websocket/websocket.js

像这样-

enter image description here

为了检查我的 Jade 米日志,我做了这个-

sudo grep --color -i cron /var/log/syslog

发现了这样的东西-

enter image description here

但是我发现服务器没有通过这个运行-

forever list

并且有 - 没有永远运行的进程

enter image description here

但是如果我运行这个-

forever start /var/www/websocket/websocket.js

然后运行这个-

forever list

然后我就吃这个-

enter image description here

我向您确认 crontab 也在运行,因为如果我更改此 -

@reboot forever start /var/www/websocket/websocket.js

对此-

@reboot cd /var/www/websocket/ && touch cron_try.txt

每次电脑重新启动时我都会获得该文件。

<小时/>

我已经尝试过这个-

  1. Automatically start forever (node) on system restart
  2. Automatically restart node server
  3. http://www.hacksparrow.com/make-forever-reboot-proof-with-cron.html
  4. https://github.com/foreverjs/forever/issues/58
<小时/>

还有这个-

cronjob does not execute a script that works fine standalone

几乎是我的问题。但我已经在重新启动期间为 Node Forever.js 设置了它。

所以它并不能解决我的问题。

<小时/>

有人可以帮忙吗?

最佳答案

我已经通过这种方式解决了这个问题-

首先,通过这个找到永久位置-

which forever

得到这个-

/usr/local/bin/forever

然后将此路径放入 crontab 中,如下所示 -

@reboot /usr/local/bin/forever start /var/www/websocket/websocket.js

我们就完成了:)

关于node.js - 使 Node 服务器重启证明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37268145/

相关文章:

php - cron 作业很昂贵吗?或者他们基本上是访问?

cron - cpanel cron 作业命令语法

linux - Crontab 不通过管道传送到文件 (LINUX)

node.js - 如何终止已停止的forever.js 守护进程?

node.js - 我正在尝试将 Sequelize 与 Next JS API 路由一起使用

ubuntu - 在本地运行 MPI 应用程序或启动 ParaView 时 MIT-MAGIC-COOKIE-1 key 无效

php - 如何在 php(ubuntu) 上模拟 on_script_close,就像 .net on_form_close 行为一样?

javascript - 如何监听房间事件

javascript - 使用 Node.js 中的 API 调用清除 Cloudflare 缓存

php - 使用php命令杀死进程