Heim  >  Artikel  >  Backend-Entwicklung  >  So konfigurieren Sie das Fehlerprotokoll in php.ini

So konfigurieren Sie das Fehlerprotokoll in php.ini

藏色散人
藏色散人Original
2021-07-16 09:19:292538Durchsuche

So konfigurieren Sie das Fehlerprotokoll in php.ini: 1. Öffnen Sie die Konfigurationsdatei php.ini und ändern Sie „display_errors = On“. 2. Zeichnen Sie in der durch „error_log“ angegebenen Datei auf.

So konfigurieren Sie das Fehlerprotokoll in php.ini

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie konfiguriere ich das Fehlerprotokoll in php.ini?

php.ini-Konfiguration – PHP-Fehlerprotokoll aufzeichnen

Konfigurationselemente für Fehlerprotokoll in PHP.ini:

; Standardwert: Ein; Entwicklungswert: Ein
; Produktionswert: Ausstellungswert; ; Produktionswert: E_ALL & ~E_DEPRECATED

; Standardwert: Ein
; Produktionswert: Aus; Produktionswert: Ein


display_errors = Aus

error_reporting = E_ALL & ~E_NOTICE


log_errors = Ein



error_log = "e:/wamp/logs/ php_error.log"


1.) display_errors = On

Wenn ein Fehler auftritt, wird ein Fehler gemeldet und eine Fehlermeldung angezeigt.
dispaly_errors = Off


Wenn ein Fehler auftritt, wird eine Fehlermeldung angezeigt : Serverfehler. Es erscheint aber keine Fehlermeldung

Fehlerecho wird häufig im Entwicklungsmodus verwendet, aber viele Anwendungen vergessen, diese Option in der offiziellen Umgebung zu deaktivieren. Fehlerechos können viele vertrauliche Informationen preisgeben, was den nächsten Angriff des Angreifers erleichtert. Es wird empfohlen, diese Option zu auszuschalten, nachdem Sie online gegangen sind.
2.) log_errors
Verwenden Sie dies einfach in einer formalen Umgebung und zeichnen Sie die Fehlerinformationen im Protokoll auf. Gerade rechtzeitig, um das Fehlerecho auszuschalten.

Standardmäßig wird es in der Protokolldatei des WEB-Servers aufgezeichnet, z. B. in der Datei error.log von Apache. Natürlich können Sie sich auch in der durch error_log angegebenen Datei anmelden .

3)error_reporting

error_reporting = E_ALL & ~E_NOTICE Referenz: http://hi.baidu.com/allense7en/item /6eb4a4ab0d596a15a8cfb7b4

kanndie Zahlen addieren, um die gewünschte Fehlermeldestufe zu erhalten.

E_ALL – alle Fehler und Warnungen (außer E_STRICT) E_ERROR – schwerwiegende Laufzeitfehler E_WARNING – Laufzeitwarnungen (nicht schwerwiegende Fehler)

E_PARSE – Parsingfehler zur Kompilierungszeit

E_NOTICE – Laufzeiterinnerungen (Diese werden häufig verursacht durch Fehler in Ihrem Code, können aber auch durch absichtliches Verhalten verursacht werden.) E_STRICT – Codierungsstandardisierungswarnungen, die es PHP ermöglichen, zu empfehlen, wie der Code geändert werden kann, um optimale Interoperabilität und Vorwärtskompatibilität sicherzustellen. 🎙 E_USER_ERROR – Benutzerdefinierte Fehlermeldung E_USER_WARNING – Benutzerdefinierte Warnmeldung E_USER_NOTICE – Benutzerdefinierte Erinnerungsmeldung Wenn E_ALL | festgelegt ist, bedeutet dies, dass alle Fehlermeldungen aufgezeichnet werden


Es wird eine Menge verursachen Es sollte jedoch gesagt werden, dass Fehlercodes eine gute Sache für Programmierer sind, die den Code optimal optimieren können, was den Betrieb des Programms nicht beeinträchtigt, aber die Belastung erhöht PHP erhöht normalerweise die Belastung des Website-Prozesses (z. B. des Anwendungspools von



IIS).

Diese Funktion wird verwendet, um die Ebene der Fehlermeldungsberichterstattung zu konfigurieren. Die Parameterebene ist eine ganzzahlige Bitmaske, siehe Tabelle unten.

Der Maskenwert repräsentiert den Namen
1 E_ERROR
2 E_WARNING
4 E_PARSE
8 E_NOTICE
16 E_CORE_ERROR.
32 E_CORE_WARNING
64 E_COMPILE_ERROR
128 E_COMPILE_WARNING
256 E_USER_ERROR
512 E_USER_WARNING
1024 E_USER_NOTICE
2047 E_ALL
2048 E_STRICT

E_NOTICE bedeutet, dass die normale Situation nicht aufgezeichnet wird und nur verwendet wird, wenn im Programm eine Fehlersituation vorliegt, z. B. beim Versuch, auf eine nicht vorhandene Variable zuzugreifen oder die Funktion stat() aufzurufen, um eine nicht vorhandene Datei anzuzeigen.
E_WARNING wird normalerweise angezeigt, unterbricht jedoch nicht die Programmausführung. Dies ist nützlich zum Debuggen. Beispiel: Aufruf von ereg() mit dem betreffenden regulären Ausdruck.
E_ERROR wird normalerweise angezeigt und unterbricht die Programmausführung. Das bedeutet, dass Speicherkonfigurationen oder andere Fehler über diese Maske nicht nachvollzogen werden können.
E_PARSE analysiert Fehler aus der Grammatik.
E_CORE_ERROR Ähnlich wie E_ERROR, beinhaltet jedoch keine durch den PHP-Kern verursachten Fehler.
E_CORE_WARNING Ähnlich wie E_WARNING, enthält jedoch keine PHP-Kernfehlerwarnungen.
error_reporting( 7 ) = error_reporting( 1+2+4) = error_reporting(E_ERROR | E_WARING | E_PARSE)

Beispiel

Eine beliebige Anzahl der oben genannten Optionen kann mit „OR“ verbunden werden (verwenden Sie OR oder |), das alle erforderlichen Fehler auf allen Ebenen meldet. Der folgende Code deaktiviert beispielsweise benutzerdefinierte Fehler und Warnungen, führt bestimmte Vorgänge aus und kehrt dann zur ursprünglichen Fehlerstufe zurück:

<?php
//禁用错误报告
error_reporting(0);

//报告运行时错误
error_reporting(E_ERROR | E_WARNING | E_PARSE);

//报告所有错误
error_reporting(E_ALL);
?>

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie das Fehlerprotokoll in php.ini. 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