Laravel调度程序在Dreamhost VPS中不起作用。
Dreamhost的局限性是不允许每分钟通话,因此我改为每10分钟通话一次。但是,调度程序在任何情况下都不会触发。
我已经尝试了以下cron命令:
php ~/site.com/artisan schedule:run >> /dev/null 2>&1
和
cd / site.com && php artisan schedule:run >> /dev/null 2>&1
但是两者都不起作用。
这是我的kernel.php内部的内容
protected $commands = [
'App\Console\Commands\DailyStatus',
];
/**
* Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/
protected function schedule(Schedule $schedule)
{
$schedule->command('status:daily')
->timezone('Asia/Manila')
->dailyAt('6:50');
$schedule->command('status:daily')
->timezone('Asia/Manila')
->daily()
->between('12:00','12:30')
->appendOutputTo(public_path().'status_daily_output.log')
->withoutOverlapping(60);
$schedule->command('status:daily')
->timezone('Asia/Manila')
->dailyAt('12:15')
->appendOutputTo(public_path().'status_daily_at_output.log')
->withoutOverlapping(60);
}
日志也没有生成。我已经输入了一些echo命令,并且没有触发。
如何测试我的调度程序是否正确配置?
有人可以帮我解决当前设置吗?
谢谢。
因此,经过大量测试,我设法使它起作用。
确保您的帐户可以执行命令
crontab -e
如果不能,请联系Dreamhost支持以修复权限。
对于您的cron命令,您需要指定php的确切位置
cd ~/site.com && /usr/local/php72/bin/php artisan schedule:run >> /dev/null 2>&1
由于Dreamhost不允许分钟,因此建议每10分钟执行一次。
我希望这有帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句