Cron 从另一个PHP文件(exec)执行PHP脚本

Cron 从另一个PHP文件(exec)执行PHP脚本,cron,exec,daemon,php,Cron,Exec,Daemon,Php,最初我有一个cronjob,每天执行一个php文件。显然,php文件太重,cronjob没有执行它 我选择创建一个24小时休眠的守护进程,它工作得非常好,只是我认为服务器会在一段时间后由于不活动而终止这个进程。我有一个每5分钟运行一次的执事,这个执事从不停止,但等待24小时的执事总是停止工作 我的计划是创建一个cronjob来检查进程是否正在运行,如果不执行它: exec("ps auxwww|grep _DAEMON.php|grep -v grep", $output); if(empty(

最初我有一个cronjob,每天执行一个php文件。显然,php文件太重,cronjob没有执行它

我选择创建一个24小时休眠的守护进程,它工作得非常好,只是我认为服务器会在一段时间后由于不活动而终止这个进程。我有一个每5分钟运行一次的执事,这个执事从不停止,但等待24小时的执事总是停止工作

我的计划是创建一个cronjob来检查进程是否正在运行,如果不执行它:

exec("ps auxwww|grep _DAEMON.php|grep -v grep", $output);
if(empty($output)){
   exec("php -f _DAEMON.php");
}
出于某种原因,这不起作用,execps auxwww | grep | u DAEMON.php | grep-v grep,$output可以很好地检测脚本是否正在运行,因此execphp-f 124; u DAEMON.php是不起作用的

我试图从execphp-f_DAEMON.php$status打印_r$status;这就是我得到的:

Array
(
    [0] => X-Powered-By: PHP/5.2.17
    [1] => Content-type: text/html
    [2] => 
)
我尝试了execphp cli-f_DAEMON.php,效果非常好,但是由于我调用的文件是一个守护进程,php cli使其成为我原始文件的一部分(我相信是某种包含),并冻结了我的原始文件,它确实为守护进程创建了一个单独的新进程,但原始文件将永远加载


有什么想法吗?谢谢

_DAEMON.php不同于_RANDOMSD.php。那么执行execphp-f_DAEMON.php;的结果是什么呢?对不起,错别字了。我刚刚修复了它,请看:谢谢@ShivanRaptor,这是成功的,现在的问题是,在php cli中执行的任何内容都将成为原始脚本的一部分,并且由于我的第二个脚本是一个守护进程,它将冻结@ShivanRaptor请看我问题的底部,我添加了你的解决方案和我遇到的问题,谢谢!