Heim  >  Artikel  >  Backend-Entwicklung  >  So aktivieren Sie die PHP-Fehlerberichterstattung in Nginx

So aktivieren Sie die PHP-Fehlerberichterstattung in Nginx

PHPz
PHPzOriginal
2023-04-06 09:15:02712Durchsuche

Nginx ist ein weit verbreiteter Webserver und Reverse-Proxy-Server, der in vielen Websites und Anwendungen mit hohem Datenverkehr verwendet wird. Bei der Verwendung von Nginx treten jedoch manchmal PHP-Fehler auf. In diesem Artikel werden die Gründe für die Aktivierung des PHP-Fehlers und die Lösung dieses Problems vorgestellt.

1. Das Vorhandensein des Problems

In Nginx erfordert die Verwendung des PHP-Interpreters die Bindung von PHP-CGI an Nginx. Die Interaktion zwischen PHP-CGI und Nginx kann über das FastCGI-Protokoll erreicht werden. Wie normal konfiguriert, schreibt Nginx die Ausgabe von PHP-CGI in eine temporäre Datei und überträgt die Datei dann über das Dateisystem. Fehler werden im Fehlerprotokoll von Nginx protokolliert und an den Front-End-Benutzer gesendet.

Da Nginx kein integriertes PHP-Modul hat, werden PHP-Fehler möglicherweise nicht richtig angezeigt, wenn PHP-CGI nicht richtig konfiguriert ist.

2. Grund für die Fehlermeldung

Wenn PHP einen Fehler meldet, zeigt Nginx standardmäßig den HTTP-Statuscode 502 Bad Gateway an. Dies kann folgende Gründe haben:

  1. Der PHP-CGI-Prozess kann nicht mit Nginx kommunizieren. Dies kann daran liegen, dass PHP-CGI nicht ausgeführt wird oder dass Nginx falsch konfiguriert ist.
  2. Der PHP-CGI-Prozess hat einen Fehler zurückgegeben. Dies kann durch eine falsche PHP-CGI-Konfiguration oder einen Programmfehler verursacht werden.
  3. Nginx konnte nicht alle Antwortheader an den Client schreiben. Dies kann durch eine Fehlkonfiguration von Nginx oder einen ausgelasteten Server verursacht werden.

3. Lösung

Um das PHP-Fehlerproblem richtig zu lösen, müssen Sie die Ursache finden und die richtige Lösung finden.

  1. Bestätigen Sie, ob der PHP-CGI-Prozess ausgeführt wird.

Um zu überprüfen, ob der PHP-CGI-Prozess ausgeführt wird, können Sie den folgenden Befehl verwenden:

ps aux | grep php

Wenn keine Ausgabe erfolgt, bedeutet dies, dass PHP-CGI nicht ausgeführt wird läuft. Wenn Sie PHP-CGI neu starten müssen, können Sie den folgenden Befehl verwenden:

/etc/init.d/php-fpm restart
  1. Überprüfen Sie, ob der PHP-CGI-Prozess mit Nginx kommuniziert

Um sicherzustellen, dass der PHP-CGI-Prozess korrekt mit Nginx kommuniziert, müssen Sie um Folgendes in der Nginx-Konfigurationsdatei zu überprüfen:

location ~ \.php$ {
  fastcgi_pass   127.0.0.1:9000;
  fastcgi_index  index.php;
  include        fastcgi_params;
  fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

fastcgi_pass gibt hier die Adresse und den Port des PHP-CGI-Prozesses an. Wenn dieser falsch ist oder nicht gestartet wird, kann Nginx nicht kommunizieren mit dem PHP-CGI-Verfahren. fastcgi_pass 指定了 PHP-CGI 进程的地址和端口,如果不正确或未启动,则会导致 Nginx 无法与 PHP-CGI 进程通信。

  1. 检查 PHP-CGI 配置

要检查 PHP-CGI 配置是否正确,可以打开 PHP 配置文件,例如 /etc/php5/cgi/php.ini,并确保以下设置正确:

display_errors = On
error_reporting = E_ALL & ~E_NOTICE

这些设置将启用 PHP 的错误显示和错误报告功能。

  1. 检查 Nginx 配置

要确保 Nginx 配置文件正确,您需要打开 Nginx 配置文件,例如 /etc/nginx/nginx.conf

    PHP-CGI-Konfiguration prüfen

    Um zu überprüfen, ob die PHP-CGI-Konfiguration korrekt ist, können Sie die PHP-Konfigurationsdatei öffnen, z. B. /etc/php5/cgi/php .ini und stellen Sie sicher, dass die folgenden Einstellungen korrekt sind:

    error_log /var/log/nginx/error.log;

    Diese Einstellungen aktivieren die Fehleranzeige- und Fehlerberichtsfunktionen von PHP.

      🎜Nginx-Konfiguration überprüfen🎜🎜🎜Um sicherzustellen, dass die Nginx-Konfigurationsdatei korrekt ist, müssen Sie die Nginx-Konfigurationsdatei öffnen, z. B. /etc/nginx/nginx.conf code> und stellen Sie sicher, dass Folgendes korrekt eingerichtet ist: 🎜rrreee🎜Diese Einstellung aktiviert die Fehlerprotokollierungsfunktion von Nginx und hilft so, Fehler zu finden und zu debuggen. 🎜🎜Fazit🎜🎜 PHP-Fehler sind ein häufiges Problem bei der Verwendung von Nginx, lassen sich aber auch leicht beheben. Überprüfen Sie einfach, ob der PHP-CGI-Prozess läuft und korrekt mit Nginx kommuniziert und ob PHP und Nginx richtig konfiguriert sind. Mit diesen einfachen Schritten können Sie PHP-Fehlerprobleme einfach beheben und sicherstellen, dass Ihr Server ordnungsgemäß läuft. 🎜

Das obige ist der detaillierte Inhalt vonSo aktivieren Sie die PHP-Fehlerberichterstattung in Nginx. 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