Laravel-geplante Aufgaben müssen Cron verwenden; wenn Sie alle Laravel-Aufgaben regelmäßig in Laravel ausführen möchten, müssen Sie einen Cron-Eintrag auf dem Server hinzufügen und den Code „phppath project path/artisan scheme:run…“ hinzufügen die Root-Datei.
Die Betriebsumgebung dieses Artikels: Linux7.3-System, Laravel Version 5.4, Dell G3-Computer.
Es gibt eine sehr leistungsstarke Funktion in Laravel. Sie müssen nur einen Cron-Eintrag auf dem Server hinzufügen, um alle Laravel-Aufgaben regelmäßig auszuführen.
Jetzt haben wir die folgende Datentabelle:
Ich möchte, dass sich der Wert des Cron-Felds in der Cron-Tabelle jede Minute um 1 erhöht, dann benötige ich die folgenden Schritte:
1 AppConsoleKernel.php
protected function schedule(Schedule $schedule) { $schedule->call(function () { DB::table('cron')->increment('cron'); })->everyMinute(); }
2. Fügen Sie Code zur Datei /var/spool/cron/root hinzu
Hinweis: Verwenden Sie zum Bearbeiten der Datei am besten den vim-Editor. Es besteht das Problem, dass die Aufgabe nicht ausgeführt wird.
Geben Sie
crontab -e
in der Befehlszeile ein und fügen Sie den folgenden Code hinzu:
* * * * * /usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> /dev/null 2>&1
Geben Sie
crontab -u root -l
Es ist nicht erforderlich, den Cron-Dienst neu zu starten, da das System die Dateien in /var liest Verzeichnis /spool/cron jede Minute.
Wenn Sie feststellen, dass es gemäß der folgenden Konfiguration immer noch nicht ausgeführt werden kann, können Sie das Problem mit den folgenden Methoden beheben:
Überprüfen Sie, ob der Befehl einen absoluten Pfad verwendet. Verwenden Sie beispielsweise /usr/local/php/. Hier bin/php anstelle von php, verwenden Sie /data /wwwroot/test/artisan anstelle von artisan.
Wenn der absolute Pfad immer noch nicht ausgeführt wird, geben Sie direkt /usr/local/php/bin/php /data/wwwroot/test/artisan scheme:run 1>> /dev/null 2> ein Wenn es nicht ausgeführt wird, liegt ein Problem mit dem Laravel-Code vor. Wenn es ausgeführt wird, handelt es sich um ein Problem mit der Umgebungsvariable. Wenn Sie nicht wissen, wo sich PHP befindet, geben Sie in der Befehlszeile „which php“ ein. Sie werden gefragt, wo PHP installiert ist.
【Verwandte Empfehlungen: Laravel-Video-Tutorial】
Das obige ist der detaillierte Inhalt vonMüssen geplante Laravel-Aufgaben Cron verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!