| Fehlermeldungen und Fehlerbehandlung - Fehler protokollieren |
Seite 4 von 7
Error Log / Fehlermeldungen protokollierenWenn wir wie empfohlen Error Reporting und Display Errors deaktiviert haben, haben wir aber auch ein kleines Problemchen. Wir wissen nämlich nicht, ob Fehler auftreten und wo Fehler auftreten. Glücklicherweise hat PHP aber auch hier eine Lösung im Angebot. Wir können auftretende Fehler ganz einfach umbiegen, damit diese still und heimlich in ein Log (Protokolldatei) geschrieben werden. So können wir später analysieren, ob Fehler in unserer Anwendung auftreten, wo diese auftreten und ob es sich ggfs. um gezielte Angriffe handelt. log_errors = On error_log = /pfad/zur/php/errorlog.txt Die .htaccess-Variante sieht wie folgt aus: php_flag log_errors On php_value error_log /pfad/zur/php/errorlog.txt Wichtig ist in beiden Varianten, dass die Logdatei bereits existieren muss und Schreibrechte hat, sonst kann es zu unliebsamen Überraschungen kommen! Hat man das Logging aktiviert, kann man auch zur Laufzeit manuell Einträge in die Datei schreiben und sogar per Email verschicken. Dazu verwendet man die Funktion error_log(). Beispiel: // Hängt eine Meldung an die Logdatei error_log( "Es trat ein Fehler auf.\n", 3, "/pfad/zur/php/errorlog.txt" ); // Fehlermeldung per Email senden error_log( "Es trat ein Fehler auf.", 1, "admin@domain.tld", "FROM: Fehlerreport<admin@domain.tld>" ); Fazit für LogdateiEs ist sehr zu empfehlen eine eigene Logdatei zu verwenden, da man so schön kontrollieren und analysieren kann, falls Fehler aufgetreten sind. Wichtig ist natürlich, dass man auch regelmäßig die Logdatei nach Auffälligkeiten durchsuchst und ggfs. sofort aktiv wird, sobald etwas verdächtig erscheint! |