从命令行运行 PHP 脚本作为后台进程
2022-08-30 13:19:55
我正在尝试通过Linux中的命令行在后台连续运行PHP脚本。我已经尝试了该命令,但似乎脚本执行非常快地终止,而它应该继续运行直到进程终止。php filename.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);
设置客户端断开连接是否应中止脚本执行
限制脚本的最大执行时间,在这种情况下,它将一直运行到进程完成或 apache 进程重新启动。
#Notes 和 路径可以作为完整路径提供,则可以使用 和 代替 and。
建议使用完整路径以避免“找不到文件”错误。php
filename.php
php
filename.php
/usr/bin/php
/full/path/to/filename.php
当您的会话关闭时,该过程可能会关闭。
尝试使用nohup php filename.php