PHP-Fehlerprotokolle beim Webhosting aktivieren
So konfigurieren Sie die Fehlerausgabe und das Logging für PHP-Anwendungen.
Regelmäßige Analysen der PHP-Logs sind unerlässlich, um Fehler, Warnungen und Bugs frühzeitig zu erkennen, bevor sie die Nutzererfahrung beeinträchtigen. Es wird dringend empfohlen, die Fehlerprotokollierung stets aktiviert zu lassen – insbesondere während der Entwicklungs- und Testphasen.
1. PHP-Logs über .htaccess aktivieren
Die effizienteste Methode, die Fehleranzeige und -protokollierung in einer Webhosting-Umgebung zu aktivieren, besteht darin, spezifische Direktiven in die .htaccess-Datei im Stammverzeichnis Ihrer Website einzufügen.
Grundkonfiguration:
php_value display_errors On
php_value display_startup_errors On
Erweiterte Konfiguration (empfohlen):
php_flag display_errors On
php_flag display_startup_errors On
php_flag log_errors On
php_flag ignore_repeated_errors Off
php_flag ignore_repeated_source Off
php_flag track_errors On
php_value error_reporting -1
php_value error_log /home/ваш_логин/public_html/php-errors.log
Nach dem Hinzufügen dieser Zeilen werden PHP-Fehler:
- Direkt auf dem Bildschirm angezeigt (wenn
display_errorsaktiviert ist) - In der angegebenen Datei
php-errors.logaufgezeichnet
2. Fehler innerhalb eines PHP-Skripts aktivieren
Wenn Sie nur ein bestimmtes Skript debuggen möchten, können Sie die Fehlerberichterstattung direkt in der PHP-Datei aktivieren, indem Sie den folgenden Code am Anfang des Skripts einfügen:
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
ini_set('error_reporting', E_ALL);
3. Konfiguration über php.ini
Wenn Ihre Hosting-Umgebung Zugriff auf eine benutzerdefinierte php.ini-Datei bietet, können Sie diese Einstellungen global verwalten:
error_reporting = E_ALL
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
error_log = /home/ваш_логин/public_html/php-errors.log
Protokollierung für Cron-Jobs
Fehler, die durch Skripte entstehen, die über Cron oder die Kommandozeile (CLI) ausgeführt werden, erscheinen nicht in den Standard-Webserver-Logs. Um diese Ausgabe zu erfassen, leiten Sie das Ausführungsergebnis in Ihrem Cron-Befehl in eine dedizierte Log-Datei um:
/usr/local/bin/php /home/ваш_логин/public_html/site.ru/script.php &>> /home/ваш_логин/logs/cron.log
Es empfiehlt sich, im Home-Verzeichnis ein separates Verzeichnis /logs zu erstellen, um alle system- und cron-bezogenen Logs sicher zu speichern.
Best Practices
- Entwicklungsmodus:
display_errors = Onaktiviert lassen, um beim Programmieren sofortige Rückmeldungen zu erhalten. - Produktiv-Sites:
display_errorsauf Live-Sites immer deaktivieren, damit keine sensiblen Pfadinformationen an Besucher weitergegeben werden. Stellen Sie sicher, dasslog_errors = Onfür das Hintergrund-Monitoring aktiv bleibt. - Wartung: Überprüfen Sie Ihre
php-errors.log-Datei regelmäßig, um versteckte Probleme zu finden, die die Seite nicht zwangsläufig zum Absturz bringen, aber die Performance beeinträchtigen. - Caching: Leeren Sie nach der Aktualisierung Ihrer PHP-Einstellungen den Browser-Cache und – falls zutreffend – den OPCache, um die Änderungen zu sehen.
Hilfe
Bei Fragen oder wenn Sie Unterstützung brauchen, erreichen Sie uns jederzeit über das Ticketsystem — wir helfen Ihnen gern weiter!