Cron的工作没有运行Laravel 5.3

时间:2017-03-07 00:54:23

标签: php laravel laravel-5 cron laravel-5.3

所以我已经设置了我的内核文件来安排命令在每天凌晨2点运行。

class Kernel extends ConsoleKernel
{
/**
 * The Artisan commands provided by your application.
 *
 * @var array
 */
protected $commands = [
    Commands\Users\MyCommand::class
];

/**
 * Define the application's command schedule.
 *
 * @param  \Illuminate\Console\Scheduling\Schedule  $schedule
 * @return void
 */
protected function schedule(Schedule $schedule)
{
    $schedule->command(Commands\Users\MyCommand::class)
        ->dailyAt('02:00');
}
}

我也按照文档的建议在命令行中运行它:

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

当我在命令行中运行'php artisan MY COMMAND NAME'时,命令执行。此外,当我使用schedule时:在正确的时间运行该命令也会运行。

但是,我希望它在指定的时间自动运行,但这不会发生。

2 个答案:

答案 0 :(得分:1)

您必须将此命令添加到您的cron作业

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

要编辑您的cron作业,请先键入此命令

crontab -e

答案 1 :(得分:0)

/path/to/artisan应该是Artisan的实际路径。通常类似于/home/myUser/laravel/artisan或您的Laravel / Artisan在您的安装中。