Laravel 8通过cron调用路由



我正在尝试调用路由作为cron作业。我尝试了几个指南,比如:

通过命令行调用laravel控制器和https://laracasts.com/discuss/channels/laravel/croning-a-route

这导致在内核中添加:

protected function schedule(Schedule $schedule) {
$schedule->call(function () {
(new Cron_c)->start();
})->everyMinute();
}

在使用

进行测试时,除了输出'Callback'之外什么都不做
php /var/www/html/mySite/artisan schedule:run

输出
[2022-07-11T15:27:50+00:00] Running scheduled command: Callback

在浏览器中输入路由时,cron作业代码运行良好,并输出日志信息和屏幕。

你要找的是Laravel命令:https://laravel.com/docs/9.x/artisan

使用php artisan make:command <your Command Name>可以创建命令。这些将在App/Console/Commands目录中创建。

你会发现在新创建的类中有一个叫做handle()的函数,你可以把你的代码放在那里。

调用函数的CLI命令将在属性protected $signature = "datadimensionsCommand";中设置,这也是为您准备的。

所以你的cronjob会调用:

$> php /path/to/your/app/artisan datadimensionsCommand

查看文档以获得更深入的了解!

最新更新