Différentes façons de redémarrer PHP-FPM ⋆ ALexHost SRL

Testez vos compétences sur tous nos services d'hébergement et bénéficiez de 15% de réduction!.

Utilisez le code à la caisse :

Skills
09.12.2024

Différentes façons de redémarrer PHP-FPM

PHP-FPM (PHP FastCGI Process Manager) est un gestionnaire de processus puissant et largement utilisé pour PHP, souvent apprécié pour sa vitesse et sa capacité à gérer des sites web à fort trafic. Savoir comment redémarrer PHP-FPM est crucial pour les développeurs et les administrateurs système, en particulier lorsqu’il s’agit d’appliquer des changements à la configuration de PHP, de résoudre des problèmes ou d’effectuer une maintenance de routine. Dans cet article, nous allons explorer plusieurs méthodes pour redémarrer PHP-FPM sur différents systèmes et dans différents environnements.

Pourquoi redémarrer PHP-FPM ?

Avant de plonger dans les méthodes, discutons brièvement des raisons pour lesquelles redémarrer PHP-FPM peut être nécessaire :

  1. Changements de configuration : Si vous modifiez les paramètres de PHP dans les fichiers php.ini ou php-fpm.conf, un redémarrage est nécessaire pour que les changements soient pris en compte.
  2. Optimisation des performances : Le redémarrage de PHP-FPM peut aider à libérer de la mémoire et des ressources, en particulier sur les sites à fort trafic.
  3. Résolution des erreurs : Si PHP-FPM rencontre des problèmes ou ne répond plus, un redémarrage peut aider à résoudre les problèmes temporaires.
  4. Rotation des journaux : Après la rotation des fichiers journaux de PHP-FPM, un redémarrage peut être nécessaire pour s’assurer que les nouveaux journaux sont écrits correctement.

Conditions préalables

Assurez-vous d’avoir l’accès root ou les privilèges nécessaires pour redémarrer les services sur votre serveur. Selon votre distribution Linux, vous pouvez utiliser différentes commandes telles que systemctl ou service.

Méthode 1 : Utilisation de systemctl

Sur les distributions Linux modernes telles que Ubuntu 16.04 et CentOS 7, systemctl est la méthode standard pour gérer les services, y compris PHP-FPM. Voici comment redémarrer PHP-FPM en utilisant systemctl :

Redémarrer PHP-FPM

sudo systemctl restart php-fpm

Cette commande redémarre le service PHP-FPM, en appliquant les changements de configuration.

Arrêter et démarrer PHP-FPM

Si vous voulez plus de contrôle, vous pouvez arrêter et démarrer PHP-FPM manuellement :

sudo systemctl stop php-fpm
sudo systemctl start php-fpm

Cela peut être utile si vous devez vous assurer que le service est complètement arrêté avant de le redémarrer.

Vérifier l’état

Pour s’assurer que PHP-FPM a redémarré avec succès, utilisez :

sudo systemctl status php-fpm

Ceci affichera le statut du service PHP-FPM, y compris s’il est actif et les messages de log récents.

Méthode 2 : Utiliser la commande service

La commande service est couramment utilisée sur les anciennes distributions Linux ou pour la compatibilité ascendante. Voici comment redémarrer PHP-FPM en utilisant la commande service :

sudo service php-fpm restart

Ou, pour arrêter et démarrer le service séparément :

sudo service php-fpm stop
sudo service php-fpm start

Méthode 3 : Redémarrer des versions spécifiques de PHP-FPM

Si plusieurs versions de PHP sont installées, vous devez spécifier la version de PHP-FPM que vous souhaitez redémarrer. Par exemple, si PHP 7.4 est installé, utilisez la commande suivante :

sudo systemctl restart php7.4-fpm

Ou avec le service :

sudo service php7.4-fpm restart

Cette méthode est particulièrement utile dans les environnements où différentes versions de PHP sont nécessaires pour différentes applications ou sites web.

Méthode 4 : Envoyer des signaux directement à PHP-FPM

Vous pouvez envoyer directement des signaux à PHP-FPM pour recharger les configurations sans redémarrer complètement le service. Il s’agit d’une approche plus subtile qui peut être moins perturbante pour votre trafic web :

Recharger la configuration

Pour recharger la configuration de PHP-FPM sans terminer les processus existants, utilisez :

sudo kill -USR2 $(cat /run/php/php-fpm.pid)

Remplacez /run/php/php-fpm.pid par le chemin de votre fichier PID s’il est différent. Cette méthode est utile lorsque vous souhaitez recharger les changements de configuration sans redémarrer tous les processus PHP-FPM.

Redémarrage en douceur

Un redémarrage gracieux permet à PHP-FPM de finir de servir les requêtes en cours avant de redémarrer :

sudo kill -QUIT $(cat /run/php/php-fpm.pid)

Ceci est particulièrement utile dans les environnements de production où vous voulez éviter d’interrompre les sessions des utilisateurs actifs.

Méthode 5 : Utiliser pkill ou killall

Si vous rencontrez des problèmes avec PHP-FPM et que vous avez besoin d’arrêter tous les processus, vous pouvez utiliser pkill ou killall. Cette méthode est plus agressive et doit être utilisée avec précaution :

sudo pkill php-fpm

Ou bien :

sudo killall php-fpm

Après avoir tué les processus, vous devez démarrer PHP-FPM manuellement :

sudo systemctl start php-fpm

Méthode 6 : Redémarrage de Nginx ou d’Apache

Dans certains cas, redémarrer votre serveur web peut indirectement redémarrer PHP-FPM s’il est étroitement lié au processus du serveur web. Voici comment faire :

Nginx

sudo systemctl restart nginx

Apache

sudo systemctl restart apache2

Bien que cette méthode ne soit pas recommandée pour les problèmes spécifiques à PHP-FPM, elle peut être utile si vous effectuez une maintenance sur l’ensemble de votre stack web.

Meilleures pratiques pour redémarrer PHP-FPM

  • Vérifier les logs : Avant de redémarrer, vérifiez les journaux de PHP-FPM pour toute erreur ou avertissement. Cela peut aider à identifier des problèmes sous-jacents qui peuvent être résolus sans redémarrage.
  • Redémarrage en douceur dans un environnement de production : Préférez toujours un redémarrage en douceur dans un environnement de production afin d’éviter de perturber les utilisateurs.
  • Surveillez l’utilisation des ressources : Utilisez des outils comme top, htop, ou ps pour surveiller les processus PHP-FPM avant et après un redémarrage pour s’assurer qu’il fonctionne comme prévu.

Conclusion

Redémarrer PHP-FPM est une tâche commune que tout administrateur ou développeur de serveur doit connaître. Que vous utilisiez systemctl, service, envoyez des signaux, ou que vous fassiez un redémarrage gracieux, connaître la bonne méthode pour votre situation peut assurer des performances fluides et une interruption minimale de vos services. En suivant les meilleures pratiques, vous pouvez garder votre PHP-FPM efficace et gérer les problèmes qui peuvent survenir en toute confiance.

Testez vos compétences sur tous nos services d'hébergement et bénéficiez de 15% de réduction!.

Utilisez le code à la caisse :

Skills