Une brève analyse des raisons pour lesquelles Linux ne peut pas interroger le processus php

PHPz
Libérer: 2023-03-22 19:18:01
original
1250 Les gens l'ont consulté

Le serveur Linux, en tant que système serveur couramment utilisé, a dirigé le développement des serveurs Internet, et PHP, en tant que l'un des langages de développement côté serveur les plus répandus, est également devenu l'un des composants nécessaires sur les serveurs Linux. Mais parfois nous pouvons rencontrer un problème : le processus PHP en cours d'exécution ne peut pas être interrogé. Bien que cette situation soit rare, elle peut néanmoins causer de gros problèmes au fonctionnement normal du serveur. Cet article abordera plusieurs possibilités courantes pour résoudre cette situation.

Arrêté ou planté

Une possibilité est que le processus PHP se soit arrêté ou planté. S'il n'y a pas de script approprié configuré pour détecter régulièrement cette situation, nous ne pouvons obtenir des informations pertinentes qu'en consultant le journal (généralement situé sous /var/log/httpd/ ou /var/log/nginx/). Si aucun message d'erreur évident n'est trouvé, nous pouvons également essayer de vérifier si des processus PHP sont en cours d'exécution via la commande suivante :

ps aux | grep php
Copier après la connexion

Cette commande affichera tous les processus PHP en cours d'exécution. S'il n'y a pas de sortie, cela signifie qu'aucun processus PHP n'est en cours d'exécution sur le système.

Limite de mémoire

S'il y a une grande application PHP dans notre système, nous pouvons rencontrer une situation où le processus PHP atteint la limite de mémoire, provoquant la mort du processus. Pour résoudre ce problème, nous devons augmenter la limite de mémoire en modifiant le fichier de configuration PHP :

memory_limit = 256M
Copier après la connexion

Cela fixera la limite de mémoire à 256 Mo. Bien entendu, si l'espace serveur est relativement riche, vous pouvez également modifier cette valeur pour qu'elle soit plus élevée.

Problème de version PHP

Nous devons également faire attention au problème de version PHP. Certains serveurs peuvent avoir plusieurs versions de PHP installées en même temps, mais une seule d'entre elles est en cours d'exécution. Par conséquent, nous devons confirmer la version de PHP actuellement en cours d'exécution, qui peut être consultée via la commande suivante :

php -v
Copier après la connexion

Si la version de PHP en cours d'exécution ne correspond pas à la version attendue, nous pouvons utiliser la commande suivante pour modifier la version de PHP actuelle :

sudo a2dismod php7.1
sudo a2enmod php7.2
sudo service apache2 restart
Copier après la connexion

Ci-dessus La commande désinstallera la version 7.1 de PHP, activera la version 7.2 de PHP et enfin redémarrera Apache.

Problèmes d'extension PHP

Un autre problème courant est qu'une application PHP nécessite certaines extensions PHP mais que le système ne les a pas installées. Dans ce cas, nous pouvons installer l'extension manquante via la commande suivante :

sudo apt-get install php7.x-common php7.x-curl php7.x-gd php7.x-json php7.x-mbstring php7.x-mysql php7.x-xml php7.x-zip
Copier après la connexion

Vous devez modifier le x dans la commande ci-dessus vers la version actuelle de PHP. Cette commande installera les extensions PHP courantes requises pour exécuter les applications PHP. N'oubliez pas de redémarrer le serveur Web après l'installation.

Résumé

Les situations possibles lors de l'interrogation de processus PHP qui ne s'exécutent pas sur un serveur Linux incluent un processus arrêté ou en panne, des problèmes de limite de mémoire, des problèmes de version PHP et des extensions PHP manquantes, etc. Grâce aux méthodes fournies dans cet article, nous pouvons essayer de résoudre ces problèmes et restaurer le fonctionnement normal du serveur. Si le problème persiste, nous pouvons également essayer de consulter le fournisseur de services ou les forums techniques concernés pour obtenir plus de solutions.

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal