从命令行运行PHP脚本作为后台进程

我试图通过Linux中的命令行在后台连续运行PHP脚本。我已经尝试过该命令,php filename.php

&但是脚本执行似乎很快终止,而脚本应继续运行直到该过程终止。

有什么建议么?

回答:

您确定脚本不包含任何错误吗?这就是通常使“ 执行很快终止 ”的原因。

首先,附加:

error_reporting(E_ALL); ini_set('display_errors', 1);

在脚本顶部显示可能存在的任何错误,然后可以使用:

nohup php filename.php &

即使会话断开连接或用户注销,nohup也会运行命令。

要么

nohup php filename.php >/dev/null 2>&1 &

与上述相同,但不创建nohup.out文件。


您还可以使用:

ignore_user_abort(1);

设置客户端断开连接是否应中止脚本执行

set_time_limit(0);

限制脚本的最大执行时间,在这种情况下,它将一直运行到进程结束或apache进程重新启动。


笔记

phpfilename.php路径可以被设置为一个

,而不是phpfilename.php,你可以使用/usr/bin/php/full/path/to/filename.php

以避免 找不到文件 错误。

以上是 从命令行运行PHP脚本作为后台进程 的全部内容, 来源链接: utcz.com/qa/399270.html

回到顶部