我有几个VPS托管并安装了WHM / cPanel。我想在无限时间内使用命令行运行php脚本。
我的脚本如下:
<?php
set_time_limit(0);
while(true)
{
//code to send me email
sleep(600);
}
?>
我知道这个脚本应该无限期运行。
我使用过这些命令:
php myfile.php &
nohup php myfile.php &
我在stackoverflow上找到了这些命令。这些都运行良好。但一小时后,它会自动停止。
我想,我做对了。但我不知道,这正在扼杀这个过程。
如果没有,
我想知道如何在无限时间内运行此脚本。
答案 0 :(得分:0)
如果您有控制台访问权限,请尝试使用cronjob运行此文件。
请参阅:https://www.centos.org/docs/5/html/Deployment_Guide-en-US/ch-autotasks.html
还:http://alvinalexander.com/linux/linux-crontab-file-format-example
确保在cron-job中使用php-command
注意:您需要管理员权限才能编辑/使用cron-jobs
答案 1 :(得分:0)
你在做什么是正确的。它应该运行。我有PHP脚本运行超过一个小时。他们连续几天都跑了。我也有非PHP的程序应该永远运行,但不是。这是因为他们因程序中的错误而死亡。例如,xscreensaver每周大约一次死在我身上。为了让它保持运行,我使用这个shell脚本(您可以使用它来保持PHP运行):
while:
do
xscreensaver &
wait
done
现在,如果程序因任何原因而死亡,那么运行该shell脚本将再次启动该程序。