首页 > 解决方案 > 长时间运行的 Cronjob php 脚本停止而没有错误

问题描述

首先我知道这看起来像是重复的,但我尝试了很多在几乎相同的问题中提出的建议。

我有一个网站,我不自己托管,而是由托管商托管。我需要定期更新我的数据。我的方法是让一个 cronjob 在我的网站空间上调用一个 php,然后更新目前大约需要 5-6 分钟的数据。

当我自己在浏览器中打开 php 时,一切正常。(当然处理时间为空白,但它完全运行并更新所有数据。)但是当我让 cronjob 执行它(通过 cron-job.org)时,它在大约 2 分 30 秒后停止,没有给出任何错误。(我通过 echo 记录该过程并记录到文件中)

我无法直接访问 php.ini 来修改其中的变量,所以我尝试了以下操作:ignore_user_abort(true);

ignore_user_abort(true);
set_time_limit(0);
ini_set('max_execution_time','600'); 
ini_set('max_input_time','600');

我知道 cron-job.org 会在 30 秒后超时,但我理解它,因此忽略用户中止可以解决这部分问题。

我完全不知道该怎么做才能完成这项工作,而且我看不到另一种方法来自动化我的更新过程。

提前致谢

编辑:我不想更新数据库中的任何内容,所以“更新前 100 行”对我来说真的不起作用.. 我更新了一个 json。

标签: phpcrontimeout

解决方案


推荐阅读