Heim > Fragen und Antworten > Hauptteil
Ich habe ein Laravel-Projekt v8 und habe einen Cron-Job für die Datenbanksicherung erstellt
Es funktioniert jede Minute, aber wenn ich die Tageszeit angebe, funktioniert es nicht.
Die Projektzeitzone ist „Asien/Kolkata“ und die Zeitzone meines gemeinsam genutzten GoDaddy-Servers ist UTC.
kernel.php
<?php namespace App\Console; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; class Kernel extends ConsoleKernel { /** * Define the application's command schedule. * * @param \Illuminate\Console\Scheduling\Schedule $schedule * @return void */ protected function schedule(Schedule $schedule) { // $schedule->command('backup:clean')->everyMinute(); $schedule->command('backup:run')->cron('51 3 * * *'); } /** * Register the commands for the application. * * @return void */ protected function commands() { $this->load(__DIR__.'/Commands'); require base_path('routes/console.php'); } }
Mein Cronjob auf Cpanel.
P粉0578693482024-03-29 14:22:49
替换您的kernel.php
command('backup:clean')->everyMinute(); } /** * Register the commands for the application. * * @return void */ protected function commands() { $this->load(__DIR__.'/Commands'); require base_path('routes/console.php'); } }
在此之后,在 Cpanel 上设置 cronjob 以及您要执行的时间
检查 cpanel 中的给定时间,cron 一定会工作
P粉2327937652024-03-29 13:40:39
你可以像这样运行 cron:
protected function schedule(Schedule $schedule) { $schedule->command('backup:run')->dailyAt('03:51'); }