0

我用 ZMQ 完成了一个程序,构建了一个 PHP Socket 程序,并且为了接受一些客户端请求。我必须确保这个服务器程序一直在 linux 中运行。

我像这样运行这个程序:php /app/server.php.

并且,终端显示我的输出语句waiting for client connecting...,此时,我不能使用我的终端做其他事情,除非我Ctrl + c退出这个程序。

我想让它像进度一样在linux后台自动运行。并且程序可能会死PHP Error,我必须手动重新启动该程序。

我也希望它可以在发生错误时重新启动。

怎么做?先谢谢你:)

4

3 回答 3

0

使用命令末尾的 & 符号在后台运行程序,如下所示: php /app/server.php &

您可以将上述命令放在 /etc/rc.local 中,以便在系统启动时自动启动。

如果您的程序产生输出,您可能希望将其发送到日志文件而不是 STDOUT。

于 2013-07-31T09:56:40.890 回答
0

尝试使用“屏幕”程序。您可以使用以下参数将其与当前终端分离,并让您的程序在其中运行。

screen -d -m php /app/server.php

还要让它在启动时自动启动,将上面的行添加到

/etc/rc.local

于 2013-07-31T06:36:01.200 回答
0

看一下System_Daemon PEAR 包。我用过几次,发现效果很好。

于 2013-07-31T04:11:44.557 回答