Der Linux-Server hat als häufig verwendetes Serversystem die Entwicklung von Internet-Servern vorangetrieben, und PHP ist als eine der am weitesten verbreiteten serverseitigen Entwicklungssprachen auch zu einer der notwendigen Komponenten auf Linux-Servern geworden. Aber manchmal kann es zu einem Problem kommen: Der laufende PHP-Prozess kann nicht abgefragt werden. Obwohl diese Situation selten vorkommt, kann sie dennoch zu großen Problemen beim normalen Betrieb des Servers führen. In diesem Artikel werden mehrere gängige Möglichkeiten zur Lösung dieser Situation erläutert.
Gestoppt oder abgestürzt
Eine Möglichkeit besteht darin, dass der PHP-Prozess gestoppt oder abgestürzt ist. Wenn kein geeignetes Skript eingerichtet ist, um diese Situation regelmäßig zu erkennen, können wir relevante Informationen nur durch Anzeigen des Protokolls erhalten (normalerweise unter /var/log/httpd/ oder /var/log/nginx/). Wenn keine offensichtliche Fehlermeldung gefunden wird, können wir auch versuchen, mit dem folgenden Befehl zu überprüfen, ob PHP-Prozesse ausgeführt werden:
ps aux | grep php
Dieser Befehl gibt alle aktuell laufenden PHP-Prozesse aus. Wenn keine Ausgabe erfolgt, bedeutet dies, dass auf dem System kein PHP-Prozess ausgeführt wird.
Speicherlimit
Wenn sich in unserem System eine große PHP-Anwendung befindet, kann es vorkommen, dass der PHP-Prozess das Speicherlimit erreicht und der Prozess abgebrochen wird. Um dieses Problem zu lösen, müssen wir das Speicherlimit erhöhen, indem wir die PHP-Konfigurationsdatei ändern:
memory_limit = 256M
Dadurch wird das Speicherlimit auf 256 MB festgelegt. Wenn der Serverplatz relativ groß ist, können Sie diesen Wert natürlich auch ändern, um ihn zu erhöhen.
PHP-Versionsproblem
Wir müssen auch auf das PHP-Versionsproblem achten. Auf einigen Servern sind möglicherweise mehrere PHP-Versionen gleichzeitig installiert, von denen jedoch nur eine ausgeführt wird. Daher müssen wir die aktuell laufende PHP-Version bestätigen, die über den folgenden Befehl angezeigt werden kann:
php -v
Wenn die aktuell laufende PHP-Version nicht mit der von uns erwarteten Version übereinstimmt, können wir den folgenden Befehl verwenden, um die aktuelle PHP-Version zu ändern:
sudo a2dismod php7.1 sudo a2enmod php7.2 sudo service apache2 restart
Oben Der Befehl deinstalliert Version 7.1 von PHP, aktiviert Version 7.2 von PHP und startet schließlich Apache neu.
PHP-Erweiterungsprobleme
Ein weiteres häufiges Problem besteht darin, dass eine PHP-Anwendung bestimmte PHP-Erweiterungen erfordert, diese aber auf dem System nicht installiert sind. In diesem Fall können wir die fehlende Erweiterung über den folgenden Befehl installieren:
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
Sie müssen das x im obigen Befehl auf die aktuelle PHP-Version ändern. Dieser Befehl installiert gängige PHP-Erweiterungen, die zum Ausführen von PHP-Anwendungen erforderlich sind. Denken Sie daran, den Webserver nach der Installation neu zu starten.
Zusammenfassung
Mögliche Situationen beim Abfragen von PHP-Prozessen, die nicht auf einem Linux-Server ausgeführt werden, sind unter anderem gestoppte oder abgestürzte Prozesse, Probleme mit der Speicherbeschränkung, Probleme mit der PHP-Version und fehlende PHP-Erweiterungen usw. Mit den in diesem Artikel bereitgestellten Methoden können wir versuchen, diese Probleme zu lösen und den Server wieder in den Normalbetrieb zu versetzen. Wenn das Problem weiterhin besteht, können wir auch versuchen, den Dienstanbieter oder relevante technische Foren zu konsultieren, um weitere Lösungen zu finden.
Das obige ist der detaillierte Inhalt vonEine kurze Analyse der Gründe, warum Linux den PHP-Prozess nicht abfragen kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!