小白在初次部署服务到远程服务器时(这里只针对linux系统的远程服务器),常常会发现关闭本地与远程服务器的连接时,就访问不到后台服务了。这里讲一下怎么解决linux保持后台运行服务的问题。
- nohup 要执行的命令(如 npm start) &
运行上一行的命令后按回车键跳过提示即可
- exit
输入exit命令退出终端。
这样,即使你退出终端,服务也会保持在后台运行。
需要注意的是,对于nodejs后台服务来说,由于nodejs是单线程的,因此假如服务器运行出错,就会退出进程,也就是说这个时候你也访问不了后台服务了。因此,对于没有线程守护的后台程序,建议了解一下forever与pm2。