- Windows 11 Screenshot: Als Bild oder Video speichern!
- PHP Fehler anzeigen: Fehleranzeige aktivieren für eine oder alle Seiten!
- PHP: Notice und Warning abschalten oder ausblenden!
- Weiterleitung: 301 Redirect mit PHP!
- Lösung: Fehler 403 - Zugriff verweigert / Access forbidden
- Fritzbox 7590 / 6890: WLAN ausgefallen – Vorsicht!
- Windows 11 Screenshot: Als Bild oder Video speichern!
PHP Fehler anzeigen: Fehleranzeige aktivieren für eine oder alle Seiten!
Schnell sehen, wo der PHP Fehler liegt: Dazu schaltet man die PHP Fehleranzeige ein, um genaue Informationen zu Problem und Zeilennummer zu bekommen. Die PHP Fehlermeldungen sind zumindest auf Test-Systemen praktisch, um Bugs und Fehler im Code schnell finden und beheben zu können. Auf einem Produktiv-System wird die Fehler-Anzeige dann oft über die Dateien php.ini oder .htaccess abgeschaltet, damit Webseiten-Besucher mögliche Fehler oder Warnungen nicht sehen. Zum Entwickeln lassen sich die PHP Fehler aber auch für einzelne Seiten einschalten.
PHP Fehleranzeige über die php.ini aktivieren
Die Datei php.ini
ist die Hauptkonfigurationsdatei für PHP. Hier lassen sich zahlreiche Einstellungen für die Programmiersprache vornehmen: Das sollten aber nur geübte Nutzer machen. Zur Sicherheit sollte man die Datei vorher duplizieren, damit man immer ein Backup mit den alten Einstellungen besitzt. Um in der php.ini Datei die Fehleranzeige zu aktivieren, müssen folgende Einstellungen vorgenommen werden:
error_reporting = E_ALL display_errors = On log_errors = On error_log = /path/to/php-error.log
Die Einstellung error_reporting = E_ALL
sorgt dafür, dass alle Fehlerarten gemeldet werden: Dies enthält neben wirklichen Fehlern (“Fatal_Error”) auch Warnungen (“Warning”) und Hinweise (“Notice”). Während ein Fatal_Error das PHP Programm abstürzen lässt oder, bei deaktivierten Fehlermeldungen, einen Server Error 500 ausgibt, läuft ein Programm trotz Warning und Notice Ausgaben weiter. Mit display_errors = On
werden die Fehler direkt im Browser angezeigt. log_errors = On
und error_log
geben an, dass die Fehler zusätzlich in eine Log-Datei geschrieben werden sollen. Unter “error_log” wird der Pfad zu der Log-Datei angegeben, über die man sich die PHP Fehlermeldungen später ansehen kann. Und wo befindet sich die php.ini? Wie man die php.ini Datei findet und bearbeitet!
Das bedeuten die PHP Einstellungen:
- error_reporting = E_ALL: Alle Fehlerarten werden gemeldet
- display_errors = On: Dies aktiviert die Ausgabe der Fehlermeldungen im Browser
- log_errors = On: Hiermit wird auch das Schreiben in ein log-file aktiviert
- error_log = …: Dies ist der Pfad zu der Log-Datei mit Fehlermeldungen
Sollen die PHP Fehler nur im Browser angezeigt werden, reichen die ersten beiden Zeilen aus: Die anderen Zeilen können zu Beginn der Zeile mit einer Raute (“#”) auskommentiert werden. Am besten sollten diese Zeilen dann aber nicht bearbeitet werden: Dies behält dann die bisherige Einstellung für diese Werte bei.
PHP Fehleranzeige über die .htaccess aktivieren
Wenn Sie als Webmaster keinen Zugriff auf die php.ini
Datei haben, und die PHP Fehlermeldungen nicht über diese Konfiguration aktivieren können, lässt sich die Fehleranzeige auch über die .htaccess
Datei in einem Ordner aktivieren. Diese Methode funktioniert allerdings nur, wenn als Server “Apache” verwendet wird und die .htaccess
aktiviert ist: Der alternative Webserver nginx unterstützt keine .htaccess Dateien. Jeder Ordner in einem Webspace kann eine eigene .htaccess Datei mit eigenen Einstellungen enthalte: So lassen sich die PHP Fehler auch nur in einem bestimmten Ordner anzeigen. Sollen die PHP Fehler für alle Dateien angezeigt werden, sollte die .htaccess Datei in dem obersten Ordner des Webspace bearbeitet werden.
Unter Linux-Dateisystemen gelten Dateien, die mit einem Punkt beginnen (wie die .htaccess) als unsichtbar und werden unter Umständen nicht dargestellt: Hier muss die Unterstützung für unsichtbare Dateien (zum Beispiel im FTP/SFTP Programm) aktiviert werden. Kann man auf dem lokalen Computer daher keine .htaccess Datei anlegen, kann man sie alternativ als “htaccess.txt” Datei erstellen und erst nach dem Upload auf den Server umbenennen.
Um die PHP Fehler per .htaccess anzuzeigen, fügen Sie die folgenden Zeilen zu Beginn der .htaccess
Datei ein:
php_value error_reporting E_ALL php_value display_errors On php_value log_errors On php_value error_log /path/to/php-error.log
Diese Einstellungen bewirken dasselbe wie die vorher gezeigten Anpassungen in der php.ini
Datei und aktivieren die Fehleranzeige sowie die Protokollierung in die Log-Datei. Soll nur die Ausgabe im Browser aktiviert werden, sind ebenfalls die ersten beiden Zeilen ausreichend.
PHP Fehleranzeige direkt im Skript aktivieren
Falls Sie weder die php.ini
noch die .htaccess
Datei anpassen können, haben Sie immer noch die Möglichkeit, die Fehleranzeige direkt in dem PHP-Skript zu aktivieren, dass nicht mehr funktioniert und einen Fehler hat. Diese Methode ist besonders nützlich für die Entwicklung und das Debugging auf einem Live-System, da Besucher auf anderen Seiten des Projektes keine Fehler angezeigt bekommen. Um die PHP Fehlermeldungen nur für eine Datei zu aktivieren, fügen Sie die folgenden Zeilen am Anfang des PHP-Skripts ein:
<?php error_reporting(E_ALL); ini_set('display_errors', 'On'); ini_set('log_errors', 'On'); ini_set('error_log', 'php-errors.log'); ?>
Mit diesen Einstellungen werden alle Fehler angezeigt und in der Datei php-errors.log
protokolliert, die sich im gleichen Verzeichnis wie das Skript befindet. Reicht die Ausgabe im Browser aus, reichen ebenfalls wieder die ersten beiden Zeilen. Um die Fehler-Anzeige im Browser ohne Log-Datei zu aktivieren, muss man also nur diesen Code in die PHP Datei einfügen:
<?php error_reporting(E_ALL); ini_set('display_errors', 'On'); ?>
Es gibt aber noch genauere Einstellungsmöglichkeiten für das PHP error_reporting: So lassen sich auch bestimmte Meldungen, zum Beispiel für Hinweise (“Notice”) ausblenden und nur wirklich gravierende PHP Fehler anzeigen:
error_reporting(E_ALL & ~E_NOTICE);
Fehleranzeige in der Produktion deaktivieren
Während der Entwicklung ist die Fehleranzeige äußerst nützlich, sollte später bei der Produktionsumgebung abgeschaltet werden: Das ist nicht nur schöner für Besucher, Angreifer können über die Fehlermeldungen auch Probleme und Schwachstellen des Webprojektes erkennen und ausnutzen. Zum Abschalten der PHP Fehler hilft die Einstellung display_errors = Off
in der php.ini
oder php_value display_errors Off
in der .htaccess
Datei bzw. ini_set('display_errors', 'Off')
in einem einzelnen PHP-Skript.
Fehlermeldungen in Log-Dateien analysieren
Das Protokollieren von Fehlern in Log-Dateien ermöglicht oft eine bessere Analyse von Fehlern als die einfache Anzeige im Browser, bei vielen Fehlern wird die Datei aber schnell sehr groß und unübersichtlich. Achten Sie daher darauf, die Log-Datei regelmäßig zu prüfen, um wiederkehrende PHP Probleme schnell zu identifizieren. Alternativ kann das Protokollieren auch ausgeschaltet und nur bei Bedarf aktiviert werden.
Beispiel für ein Debugging-Skript
Ein einfaches Beispiel für ein PHP-Skript zur Fehleranzeige könnte wie folgt aussehen:
<?php // Alle Fehler anzeigen error_reporting(E_ALL); ini_set('display_errors', 'On'); // Fehler protokollieren ini_set('log_errors', 'On'); ini_set('error_log', 'php-errors.log'); // Fehler absichtlich erzeugen echo "Test für Fehleranzeige:"; echo $DieseVariableGibtEsNicht; echo DieseFunktionGibtEsNicht(); ?>
Dieses Skript zeigt alle Fehler, Warnungen und Hinweise an und protokolliert sie zusätzlich in der Log-Datei php-errors.log
. Bei der Ausführung erzeugt das Skript dann absichtlich Fehler, um die Ausgabe der PHP Fehler im Browser und der Datei zu testen.
- datenschutz (46x gelesen)
- windows-beschleunigen (45x gelesen)
- windows-schneller-starten-autostart-aufraeumen (32x gelesen)
- pc-einsteigerkurs (22x gelesen)
- pc-einsteigerkurs-3-2 (9x gelesen)
Mehr Tipps zu PHP Fehler anzeigen: Fehleranzeige a...
-
GD Bild-Bibliothek für PHP installieren (z.B. auf einem Raspberry Pi)
Mit der Bild-Bibliothek "GD" kann man mit PHP zahlreiche Bildbearbeitungsfunktionen nutzen: So lassen sich Bilder erstellen, zuschneiden, umwandeln oder auch darin/darauf zeichnen. Die GD Bibliothek...
-
GD Bild-Bibliothek für PHP installieren (z.B. auf einem Raspberry Pi)
Mit der Bild-Bibliothek "GD" kann man mit PHP zahlreiche Bildbearbeitungsfunktionen nutzen: So lassen sich Bilder erstellen, zuschneiden, umwandeln oder auch darin/darauf zeichnen. Die GD Bibliothek...
-
PHP: cURL Antwort als Variable speichern
Wenn man in PHP eine HTTP-Anfrage mit cURL absenden möchten, wird das Ergebnis direkt ausgegeben. Möchte man das nicht, kann man die cURL Antwort aber...
-
M4A Audio-Datei in MP3 umwandeln auf dem Mac!
Eine M4A-Datei lässt sich auf einem Mac ganz einfach in eine MP3-Datei umwandeln, beispielsweise mit der Apple Music-App. Dies ist besonders nützlich, wenn man etwa...
-
Apple Mac: ZIP Datei mit Passwort schützen (ohne Zusatz-Tools)!
Durch das Zippen oder Komprimieren von Dateien spart man leicht Speicherplatz und kann mehrere Dateien als einzenes, praktisches Archiv weitergeben: Das Erstellen einer ZIP Datei...
-
CHKDSK unter Windows starten (Fehler: Zugriff verweigert)
Wer das in Windows integrierte Festplatten-Diagnosetool CHKDSK ("Check Disk") in einer normalen Eingabeaufforderung aufrufen möchte, bekommt unter Umständen eine Fehlermeldung: Windows beschwert sich, dass der...
- Win 8.1 Internet Explorer will Seiten downloaden, aber nicht anzeigen
HalloWenn ich den IE auf der Startseite clicke, öffnet sich der zwar, aber es erscheint nur e...
- Alle Dateien und Ordner anzeigen funktioniert nicht
- BIOS-Fehler oder Vieren? oder ist es Mainboard-Fehler?
Hallo Freunde,Ich habe nach fehlendem MBR im PackardBell Easynote LJ61 keine NTL..Fehler-Meldu...
- Browser öffnet nicht alle Seiten
Hallo,ich habe folgendes Problem und würde mich sehr freuen, wenn mir jemand von euch vielle...
- Alle Browser wollen die aufgerufenen Seiten in einem Windows Ordner speichern
PHP Fehler anzeigen: Fehleranzeige aktivieren für eine oder alle Seiten!