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_errors aktiviert ist)
  • In der angegebenen Datei php-errors.log aufgezeichnet

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 = On aktiviert lassen, um beim Programmieren sofortige Rückmeldungen zu erhalten.
  • Produktiv-Sites: display_errors auf Live-Sites immer deaktivieren, damit keine sensiblen Pfadinformationen an Besucher weitergegeben werden. Stellen Sie sicher, dass log_errors = On fü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!

Hilfe benötigt?Unsere Ingenieure helfen Ihnen kostenlos bei jeder Frage in wenigen MinutenKontaktieren Sie uns