laravel中使用定時(shí)任務(wù)的幾點(diǎn)注意事項(xiàng)
在App\Console\Kernel;文件下注冊自己的任務(wù)
比如:
protected function schedule(Schedule $schedule) {
$schedule->command('backup:clean')->daily()->at('16:30');
$schedule->command('backup:run')->daily()->at('17:00');
}
有一點(diǎn)需要注意的是添加到schedule里的命令要在php aritsan list里可以找到才行,如果找不到的話需要在下面的數(shù)組里注冊
protected $commands = [
];
在cron里配置定時(shí)任務(wù)
cron -l 查看當(dāng)前的任務(wù)
cron -e 編輯新的任務(wù)
使用cron -e,將下面的命令添加上
* * * * * php /your project full path /artisan schedule:run
比如我的
* * * * * php /home/yang/Sites/jindongjiaju/artisan schedule:run
我的php是添加到環(huán)境變量里面的,可以直接使用,如果沒有添加到全局變量,需要添加php的路徑
which is php
php -i
這兩條命令都可以查看php的路徑
添加完后,可以在命令行里執(zhí)行下,看看配置的是否有錯(cuò)誤,如果執(zhí)行沒有報(bào)錯(cuò),說明配置成功了。
修改項(xiàng)目的timezone
需要將項(xiàng)目的timezone 修改成本地的timezone,這一點(diǎn)很重要
在config/app.php 找到timezone 字段
默認(rèn)是
'timezone' => 'UTC',
修改成
'timezone' => 'Asia/Shanghai',