我遇到的问题是putty经常断开连接。因此,当我从终端运行PHP脚本时,它总是被中断。该脚本应该运行几个小时,所以我没有运气。
如何从服务器端完全运行此操作?我正在读关于cron的工作,但我现在很难理解。我需要什么替代cron?
我有几个脚本PHP文件需要一个接一个地运行,或者一次运行两个。有什么想法吗?
答案 0 :(得分:9)
你不需要让它在cron作业中运行 - 你可以在屏幕内运行php脚本。
只需输入;
screen php /path/to/myphpscript.php
即使断开与PuTTY的连接,屏幕仍将继续运行。如果您需要检查它,可以使用;
screen -r
重新加入此流程,并查看任何输出。
答案 1 :(得分:3)
当会话断开连接时,您需要阻止进程终止。
这样的事情会起作用:
nohup php myscript.php
答案 2 :(得分:1)
您可以创建一个cron作业,以根据时间任务列表定期启动php脚本。 More info。您也可以从控制台在后台启动任务。即php-cgi script.php&
这将使脚本成为后台任务
答案 3 :(得分:1)
看看GNU Screen;它允许您稍后分离和重新连接会话,这对于长时间运行的脚本是完美的。如果你想让它以一种反复的方式发生,那么Cron是一个不错的选择。可以使用at之类的方式安排一次性批处理作业。对于更强烈的计算需求,您可能希望研究一个更完善的作业调度系统,如TORQUE。
答案 4 :(得分:0)
您可以在后台运行程序
php ./yourscript.php &