J'ai un projet Laravel v8 et j'ai créé une tâche cron pour la sauvegarde de la base de données
Cela fonctionne toutes les minutes mais quand je précise l'heure de la journée, cela ne fonctionne pas.
Le fuseau horaire du projet est "Asia/Kolkata" et le fuseau horaire de mon serveur partagé GoDaddy est 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'); } }
Mon cronjob sur Cpanel.
Remplacez votre kernel.php
Après cela, définissez la tâche cron sur Cpanel et l'heure à laquelle vous souhaitez l'exécuter
Vérifiez l'heure indiquée dans cPanel, cron fonctionnera certainement
Vous pouvez exécuter cron comme ceci :