Maison cadre php Laravel Point de tâche planifiée Laravel Cron 'Jump Pit'

Point de tâche planifiée Laravel Cron 'Jump Pit'

Nov 15, 2019 pm 02:04 PM
laravel

L'exécution des tâches planifiées dans Laravel est implémentée via cron. Le document du site officiel est une simple phrase + une ligne de code Cron

* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
Copier après la connexion
Copier après la connexion

Mais dans le processus d'utilisation réel, si vous n'êtes pas familier avec Linux et Cron. , vous rencontrerez Nous avons compilé et enregistré quelques petits pièges et les avons partagés dans l'espoir qu'ils puissent aider tout le monde.

Pit 1 : Variables d'environnement

Lorsque Cron ne prend pas effet, cela peut être dû à des variables d'environnement d'exécution incorrectes de Cron.

Exécutez la commande

env > /tmp/env.output
Copier après la connexion

pour ouvrir le fichier /tmp/env.output et ajoutez la ligne entière du champ PATH en haut du fichier corntab. Le fichier corntab se trouve dans le /. Répertoire var/spool/cron

exemple de fichier crontab

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/mysql/bin:/opt/php7/bin:/opt/memcached/bin:/root/bin
* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
Copier après la connexion

Pit 2 : l'utilisateur d'exécution de Cron rend le journal Laravel inscriptible

Le Cron créé via la commande crontab -e appartient à l'utilisateur root. Si elle est planifiée. Si la tâche écrit activement des journaux pendant l'exécution ou rencontre des exceptions qui ne sont pas interceptées, un fichier journal avec les autorisations root sera créé, ce qui entraînera éventuellement le compte www de php. -fpm pour ne pas pouvoir écrire.

Par conséquent, vous devez spécifier l'utilisateur lors de la création de cron

crontab -u www -e
Copier après la connexion

Dans les systèmes gérés personnellement, l'utilisateur d'exécution de php-fpm est www. Veuillez ajuster le code en fonction de votre situation réelle.

Pit 3 : La dernière ligne du contenu cron n'entre pas

Après avoir résolu les deux problèmes ci-dessus, si vous constatez toujours que cron ne s'exécute pas, veuillez confirmer

* * * * * php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1
Copier après la connexion
Copier après la connexion

Il y a un retour chariot et un saut de ligne à la fin du code.

Cet écueil a troublé l'ingénieur tout l'après-midi...

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Laravel - Commandes artisanales Laravel - Commandes artisanales Aug 27, 2024 am 10:51 AM

Laravel - Artisan Commands - Laravel 5.7 est livré avec une nouvelle façon de traiter et de tester de nouvelles commandes. Il inclut une nouvelle fonctionnalité de test des commandes artisanales et la démonstration est mentionnée ci-dessous ?

Laravel - Console artisanale Laravel - Console artisanale Aug 27, 2024 am 10:51 AM

Laravel - Artisan Console - Le framework Laravel fournit trois outils principaux d'interaction via la ligne de commande, à savoir : Artisan, Ticker et REPL. Ce chapitre explique en détail Artisan.

Laravel - Personnalisations de la pagination Laravel - Personnalisations de la pagination Aug 27, 2024 am 10:51 AM

Laravel - Personnalisations de pagination - Laravel inclut une fonctionnalité de pagination qui aide un utilisateur ou un développeur à inclure une fonctionnalité de pagination. Le paginateur Laravel est intégré au générateur de requêtes et à Eloquent ORM. La méthode paginate automatique

Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Comment obtenir le code de retour lorsque l'envoi par e-mail échoue à Laravel? Apr 01, 2025 pm 02:45 PM

Méthode pour obtenir le code de retour lorsque l'envoi par e-mail de Laravel échoue. Lorsque vous utilisez Laravel pour développer des applications, vous rencontrez souvent des situations où vous devez envoyer des codes de vérification. Et en réalité ...

La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? La tâche de calendrier Laravel n'est pas exécutée: que dois-je faire si la tâche n'est pas en cours d'exécution après le calendrier: Exécuter la commande? Mar 31, 2025 pm 11:24 PM

Laravel Schedule Tâche d'exécution de dépannage non réactif Lorsque vous utilisez la planification des tâches de calendrier de Laravel, de nombreux développeurs rencontreront ce problème: Schedule: Exécuter ...

Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Dans Laravel, comment gérer la situation où les codes de vérification ne sont pas envoyés par e-mail? Mar 31, 2025 pm 11:48 PM

La méthode de traitement de l'échec de l'e-mail de Laravel à envoyer le code de vérification est d'utiliser Laravel ...

Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Comment implémenter la fonction de table personnalisée de clic pour ajouter des données dans l'administrateur DCAT? Apr 01, 2025 am 07:09 AM

Comment implémenter la fonction du tableau de Cliquez sur personnalisé pour ajouter des données dans DCATADMIN (Laravel-Admin) lors de l'utilisation de DCAT ...

Laravel - Serveur de vidage Laravel - Serveur de vidage Aug 27, 2024 am 10:51 AM

Laravel - Dump Server - Le serveur de dump Laravel est livré avec la version de Laravel 5.7. Les versions précédentes n'incluent aucun serveur de dump. Le serveur de vidage sera une dépendance de développement dans le fichier laravel/laravel composer.

See all articles