我们不可能直接通过node命令来管理远程站点,这样无法保证网站的可持续运行。我们用Forever来解决这个问题,它可以将NodeJS应用以后台守护进程的方式运行,我们还可以将NodeJS应用设成随系统启动而自动运行。
首先,安装Forever:
npm install forever -gd
这样Forever就安装好了,我们可以直接运行Forever命令:
forever --helpforever start app.jsforever stop app.js
上面命令先查看Forever帮助文件,然后运行app.js,然后停止app.js。我们要让Forever自动运行,先在/etc/init.d目录创建一个文件node,内容如下:
#!/bin/bash## node ?????Start up node server daemon## chkconfig: 345 85 15# description: Forever for Node.js#PATH=/home/node/0.8.9/binDEAMON=/home/ftp/1520/weizt-20120918-tKx/weizt.com/app.jsLOG=/home/hosts_logPID=/tmp/forever.pidcase "$1" in ???start) ???????forever start -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $DEAMON ???stop) ???????forever stop --pidFile $PID $DEAMON ???stopall) ???????forever stopall --pidFile $PID ???restartall) ???????forever restartall --pidFile $PID ???reload|restart) ???????forever restart -l $LOG/forever.log -o $LOG/forever_out.log -e $LOG/forever_err.log --pidFile $PID -a $DEAMON ???list) ???????forever list ???*) ???????echo "Usage: /etc.init.d/node {start|stop|restart|reload|stopall|restartall|list}" ???????exit 1esacexit 0
以上代码是我在本地虚拟机的配置,根据实际情况修改相关参数,主要是DEAMON的路径参数,赋予该文件可执行权限,并运行chkconfig添加自动运行:
chmod 755 /etc/init.d/nodechkconfig /etc/init.d/node on
reboot重启系统,通过浏览器进入网站可发现,该NodeJS已经可自动运行了,剩下的工作,就是好好研究NodeJS、Express和AngularJS,做一个真正属于自己的应用!
Node.js部署到服务器之后台守护进程管理器Forever
原文地址:https://www.cnblogs.com/wrpuser/p/8446920.html