Heim  >  Artikel  >  Backend-Entwicklung  >  So beheben Sie den 502-Fehler in PHP

So beheben Sie den 502-Fehler in PHP

王林
王林Original
2020-06-30 11:49:387219Durchsuche

Die Lösung für den 502-Fehler in PHP ist: 1. Erhöhen Sie die Anzahl der Fastcgi-Prozesse. 2. Erhöhen Sie die Anzahl der geöffneten Dateien im Linux-Kernel. 3. Bearbeiten Sie die Konfigurationsdatei nginx.conf Skriptausführungszeit; 4. Cache-Konfiguration zur Konfigurationsdatei nginx.conf hinzufügen.

So beheben Sie den 502-Fehler in PHP

Analyse:

Dies passiert, wenn die Anzahl der PHP-CGI-Prozesse nicht ausreicht, die PHP-Ausführungszeit lang ist oder die PHP-CGI-Prozess stirbt mit Fehler 502 ab.

Wie kann man es lösen?

1. Erhöhen Sie die Anzahl der Prozesse

Verwenden Sie netstat -napo |grep "php-fpm" | wc -l, um die aktuelle Anzahl der Fastcgi-Prozesse zu überprüfen, wenn die Anzahl nahe an der in conf konfigurierten Obergrenze liegt , müssen Sie die Anzahl der Prozesse erhöhen.

Aber Sie können die Anzahl der PHP-FPM-Unterprozesse je nach Serverspeicher auf 100 oder mehr anpassen. Auf einem Server mit 4G-Speicher reichen 200 aus.

2. Erhöhen Sie die Anzahl der vom Linux-Kernel geöffneten Dateien

Sie können diese Befehle verwenden (muss ein Root-Konto sein)

echo 'ulimit -HSn 65536'>> /etc/profile
echo 'ulimit -HSn 65536'>> /etc/rc.local
source /etc/profile

3. Passen Sie die Ausführungszeit des Skripts an

Wenn das Skript aus irgendeinem Grund lange wartet, ohne zurückzukehren, was dazu führt, dass neue Anfragen nicht verarbeitet werden, können Sie die folgende Konfiguration entsprechend anpassen.

nginx.conf enthält hauptsächlich Folgendes:

fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

php-fpm.conf Wenn es Folgendes enthält:

request_terminate_timeout =10s

4. Erhöhen Sie den Cache

Konfiguration zu nginx.conf ändern oder hinzufügen

proxy_buffer_size 64k;
proxy_buffers  512k;
proxy_busy_buffers_size 128k;

Wenn Sie mehr Wissen benötigen, besuchen Sie bitte die php-chinesische Website.

Das obige ist der detaillierte Inhalt vonSo beheben Sie den 502-Fehler in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn