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 分钟执行一次。
希望这会有所帮助!
关于laravel-5 - Laravel Scheduler 无法在 Dreamhost VPS 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56800970/