代码之家  ›  专栏  ›  技术社区  ›  El Hombre Sin Nombre

Laravel中的命令调度

  •  1
  • El Hombre Sin Nombre  · 技术社区  · 8 年前

    我正在尝试在后台每隔五分钟执行一个预定命令。我使用这个代码

    protected function schedule(Schedule $schedule)
        {
    
            $schedule->command('read:mail')->cron('*/1 * * * * *')->sendOutputTo(storage_path().'/logs/output.txt')->withoutOverlapping();
    
        } 
    

    当我使用 php artisan scheduler:run 命令可以工作,但在后台不是每五分钟工作一次。知道吗?

    1 回复  |  直到 8 年前
        1
  •  2
  •   Troyer    8 年前

    如果要使用调度程序,需要在服务器中添加Cron条目,该行将每分钟调用Laravel调度程序并执行任务。

    您需要在Crontab中添加一行内容:

    * * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1

    如果您正在使用 Ubuntu 要编辑crontab,您可以运行 crontab -e 并在底部添加线条。

    你可以在官方文件上阅读更多关于 Scheduling .

    如果您正在使用 窗户 你可以跟随 this Stackoverflow question 将任务添加到Windows任务计划程序。

    推荐文章