Heim >Betrieb und Instandhaltung >Nginx >So geben Sie eine PHP-Fehlerprotokolldatei in Nginx aus
Fügen Sie der Nginx-Konfigurationsdatei einige Konfigurationselemente hinzu, um PHP-Fehlerprotokolldateien auszugeben. Normalerweise wird die Nginx-Konfigurationsdatei auf CentOS-Systemen in /etc/nginx/nginx.conf gespeichert. Normalerweise befindet sich oben in der Datei der Konfigurationsabschnitt des http-Moduls in der Datei. Dort können Sie das folgende Konfigurationselement hinzufügen:
http { ... server { ... location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; # error log fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log"; } ... } ... }
Dieses Konfigurationselement wird nur angewendet, wenn die aufgerufene URL mit .php endet , verwenden Sie location ~ .php$ . Die Adresse und der Port des PHP-FastCGI-Servers werden in fastcgi_pass festgelegt. fastcgi_param wird zum Festlegen der Parameter von PHP verwendet, wobei SCRIPT_FILENAME den Pfad und Dateinamen des PHP-Skripts angibt. Um die Standard-FastCGI-Parameter zu verwenden, muss fastcgi_params in Nginx eingebunden werden. Die letzte Zeile fügt fastcgi_param PHP_VALUE „error_log=/var/log/nginx/php_errors.log“; hinzu, was bedeutet, dass PHP-Fehlerinformationen in der Datei /var/log/nginx/php_errors.log aufgezeichnet werden.
Erstellen Sie eine Protokolldatei, um PHP-Fehlerinformationen aufzuzeichnen. Dies ist ein Schritt, der nach der Konfiguration von Nginx erforderlich ist. Angenommen, wir möchten die Protokolldatei in /var/log/nginx/php_errors.log speichern, können wir den folgenden Befehl verwenden, um die Datei zu erstellen:
sudo touch /var/log/nginx/php_errors.log
Dann verwenden Sie den folgenden Befehl, um den Besitzer und die Berechtigungen der Datei zu ändern:
sudo chown nginx:nginx /var/log/nginx/php_errors.log sudo chmod 644 /var/log/nginx/php_errors.log
Test Wenn Sie ein PHP-Skript erstellen und eine Fehlermeldung erhalten, zum Beispiel:
<?php echo 1/0; ?>
Speichern Sie dieses Skript als test.php und platzieren Sie es dann im Web-Stammverzeichnis von Nginx, zum Beispiel /usr/ share/nginx/html/test.php . Wenn Sie http://localhost/test.php besuchen, wird ein PHP-Fehler angezeigt. Verwenden Sie dann den folgenden Befehl, um den Inhalt der Protokolldatei anzuzeigen:
sudo tail /var/log/nginx/php_errors.log
Wenn alles normal ist, sollte eine Fehlermeldung ähnlich der folgenden angezeigt werden:
[17-Oct-2021 20:52:42 UTC] PHP Warning: Division by zero in /usr/share/nginx/html/test.php on line 2
Das obige ist der detaillierte Inhalt vonSo geben Sie eine PHP-Fehlerprotokolldatei in Nginx aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!