【问题标题】:Laravel scheduler says "No scheduled commands are ready to run."Laravel 调度程序说“没有计划的命令准备好运行。”
【发布时间】:2015-05-24 08:30:35
【问题描述】:

我已经设置了这样的命令:

protected function schedule(Schedule $schedule)
{
    $schedule->command('feeds:fetch')->everyFiveMinutes();
}

我已经设置了一个 cron 作业来运行 php artisan schedule:run

当我在开发者的终端上运行该行时,它运行任务正常。在 Prod 上,它返回“没有准备好运行的预定命令。”

有什么方法可以解决这个问题?

【问题讨论】:

    标签: cron laravel-5


    【解决方案1】:

    Larachat (https://larachat.slack.com/) 的优秀人员帮助我调试了这个问题。

    问题出在我的 crontab 上。我正在设置 crontab 来执行工匠调度程序,如下所示:

    */1 * * * * php /path/to/artisan schedule:run
    

    (意思是每天每个小时的每1分钟执行一次。)

    什么时候应该:

    * * * * * php /path/to/artisan schedule:run
    

    (意思是每天每小时执行每分钟。)

    所以,当我在每小时的非第一分钟手动运行 cron 时,它根本没有运行。

    【讨论】:

    • “没有计划的命令准备好运行。”它是如何连接到 cron 的?您可以在没有 cron 的命令行上运行 artisan 命令。我想问题的描述不正确。
    • 公平地说,这不是 cron 的错,但它与失败有关,因为我的 crontab 中有错误,仅此而已。
    猜你喜欢
    • 2017-02-09
    • 1970-01-01
    • 1970-01-01
    • 2022-08-10
    • 1970-01-01
    • 2017-01-31
    • 1970-01-01
    • 2019-03-05
    • 2018-07-05
    相关资源
    最近更新 更多