【问题标题】:Laravel schedule does not run automaticallyLaravel 计划不会自动运行
【发布时间】:2019-05-29 19:41:46
【问题描述】:

我有如下的 laravel 时间表设置

  1. 创建命令并为其命名。

    class BackupDatabase extends Command{
     protected $signature = 'command:backupdatabase';
    
  2. 在 kernel.php 中注册命令

    protected $commands = [
    Commands\BackupDatabase::class
    
  3. 设置句柄

    Artisan::call('backup:run',['--only-db'=>true]);
    $output = Artisan::output();
    
  4. 添加到时间表

    $schedule->command('command:backupdatabase')->everyMinute();
    

在这个时间表上没有任何事情发生。顺便说一句,我已经在终端中尝试了“php artisan command:backupdatabase”,并且功能运行良好。我不确定我做错了什么,谢谢大家的建议。

【问题讨论】:

    标签: laravel


    【解决方案1】:

    你必须设置 crontab

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

    Laravel 计划任务之所以起作用,是因为系统计划执行 laravel 命令“schedule:run”,它自己负责在正确的时间执行 laravel 计划命令。

    【讨论】:

    • 实际上谢谢,这是我的操作 1. 运行 'crontab -e' 2. 插入 '* * * * * php /var/www/html/srp && php artisan schedule:run >> / dev/null 2>&1' 并保存。然后砰,工作得很好。
    猜你喜欢
    • 2018-05-07
    • 2016-03-06
    • 2016-04-20
    • 2020-02-07
    • 1970-01-01
    • 2021-08-20
    • 1970-01-01
    • 2016-06-24
    • 2020-08-28
    相关资源
    最近更新 更多