我用ZMQ完成了一个程序,构建了一个PHP套接字程序,并为了接受一些客户端请求。我必须确保这个服务器程序一直在linux中运行。
我这样运行这个程序:php /app/server.php
。
并且,终端显示我的输出语句,如waiting for client connecting...
,此时,我不能使用我的终端做其他事情,除非我Ctrl + c
退出此程序。
我想让它像一个进步一样在linux后台自动运行。当PHP Error
时,程序可能会死亡,我必须手动重新启动此程序。
我也希望它能在错误发生时重新启动自己。
如何做到这一点?首先感谢U:)
看看System_Daemon PEAR包。我用了好几次,发现效果很好。
尝试使用"Screen"程序。您可以使用以下参数将其从当前终端解除连接,并在其中运行您的程序。
screen -d -m php /app/server.php
为了在引导时自动启动,请将上面的行添加到
/etc/rc.local
使用&命令末尾的符号,以便在后台运行程序,如下所示:php/app/server.php;
您可以将上述命令放在/etc/rc.local中,以便在系统启动时自动启动。
如果您的程序生成输出,您可能希望将其发送到日志文件,而不是STDOUT。