Cron Job Laravel 4

时间:2014-04-26 05:43:39

标签: laravel-4 cron

我在项目中使用 liebig / cron 包作为cron作业,
我正确地遵循了这个包的安装过程,
这是我的代码

Route::get('/cron/run/cronjob123', function () {
Cron::add('example1', '* * * * *', function() {
                    echo 'success'; die;
                    return null;
                });
$report = Cron::run();
});

现在我正在localhost工作,所以当我进入时 url myproject / cron / run / cronjob123 应显示成功
但直接执行流程将 $ report
并且 $ report 有此结果,

Array ( [rundate] => 1398489241 [runtime] => -1 )

我没有得到我错的地方。

1 个答案:

答案 0 :(得分:3)

liebig/cron在其配置文件中启用了'preventOverlapping' => true。这可以防止cron作业在运行时再次运行(即前一个周期尚未完成)。

要在cron文件夹中执行此cron.lock包创建名为app/storage的文件。有时由于文件权限问题,即使在成功执行cron作业后也不会删除此文件,从而阻止了将来的任何cron作业运行。

检查app / storage目录中的文件权限。如果存在cron.lock,请将其删除并让cron作业再次运行。

希望这会对你有所帮助。