Feb
10
Bei dem Einsatz von PHP-Frameworks wie TYPO3, CakePHP oder WordPress ist es gerade im Live-Betrieb wichtig, dass die PHP-Fehlermeldungen nicht an ahnungslose Besucher herausgegeben werden. Normale Besucher des Internetauftritts können mit den Fehlermeldungen nicht viel anfangen und verlassen dadurch schnell den Internetauftritt.
Um an die PHP-Errors in der Live-Umgebung eines Internetauftritts zu gelangen, ist es ratsam die Fehlermeldungen in ein separates Log-File zu schreiben und dieses Log-File zu überwachen. Auf gut konfigurierten Produktiv-Servern (z.B. unter Debian oder Ubuntu-Linux) ist das PHP-Error-Logging per Default deaktiviert und kann im vHost oder via htaccess gesetzt werden. Das Überschreiben der PHP.ini-Werte erfolgt dann wie angesprochen über die htaccess oder oder wenn der Root-Zugriff auf dem Server vorliegt, via vHost oder direkt in der php.ini des vHosts (beim Einsatz von php-fcgi).
Getestet wurde das Aktivieren des PHP-Error-Logs von mir bei den Anbietern Hetzner und All-Inkl.com. Bei 1und1 konnte ich die Erfahrung bei Shared-Hosts machen, dass diese Option nicht gesetzt werden kann, da es dann einen 500er internal Server-Error gibt. Zahlreiche Webhoster sperren über die vHost-Konfiguration die Einstellungen in einer .htaccess-Datei. (Stichwort: AllowOverride)
PHP errors via htaccess in eine Log-Datei schreiben
Die Angabe "/home/path/htdocs/logs/" ersetzt ihr bitte mit dem absoluten Pfad (PHP-Document-Root) zu eurem Verzeichnis.
Zugriff auf die PHP-Error-Log-Datei von Dritten verhindern
# Zugriffsschutz auf PHP-Error-Log
<Files php_errors.log>
Order allow,deny
Deny from all
Satisfy All
</Files>
„Bei 1und1 konnte ich die Erfahrung bei Shared-Hosts machen, dass diese Option nicht gesetzt werden kann, da es dann einen 500er internal Server-Error gibt“
Das kann ich so bestätigen.
Jede Verwendung von php_flag oder php_value in der .htaccess führt zu einem 500 Internal Server Error.
Auch in einer PHP-Datei eingefügtes: error_reporting(…); gibt einen 500er.
So gesehen bei einem Vertrag 1&1 Home 5.0
Gruß franc