php脚本以守护进程的方式运行

1,061 阅读1分钟

写了一个聊天室,需要手动执行php start.php start命令去启动workerman的握手程序,但是退出xshell后,进程会被杀掉,因为之前用过node的forever,感觉php应该也有一个可以让脚本一直运行的命令,遗憾的是没找到;所以只能写守护进程去运行

  1. 创建一个进程,setsid 命令 > /dev/null & ,比如
setsid php /www/wwwroot/chatroom.bohongtao.online/chatroom/start.php start > /dev/null &
  1. 写个shell
 #!/bin/bash
 alive=`ps aux|grep root\/run|grep -v grep|wc -l`
 if [ $alive -eq 0]
 then
 php /www/wwwroot/chatroom.bohongtao.online/chatroom/start.php start > /dev/null &
 fi
  1. 加入crontab,定时检测,一分钟一次,如果进程不存在直接重启进程
* * * * * /home/bohongtao/ssh/chatroom.sh > /dev/null &
  1. 加入开机启动
vi /etc/rc.local  加入第一条命令