Wo speichert PHP das Fehlerprotokoll? (PHP 5, Apache, FastCGI und cPanel)

Lesezeit: 6 Minuten

Wo speichert PHP das Fehlerprotokoll PHP 5 Apache FastCGI und
PHPLOVER

Ich bin auf Shared Hosting und habe cPanelApache und PHP wird ausgeführt von FastCGI. Wo speichert PHP das Fehlerprotokoll?

Gibt es eine andere Möglichkeit, das Fehlerprotokoll in einer gemeinsam genutzten Hosting-Umgebung zu finden, anstatt die gesamte Site-Struktur durchsuchen zu müssen, um danach zu suchen? Fehlerprotokoll Dateien?

Ich habe Zugriff auf die php.ini Datei (ich verwende PHP Version 5.2.16).

  • Unter Linux auch nicht /var/log/httpd/error_log oder /var/log/apache2/error.log. Diese Dateien gehören root, also müssen Sie root oder use sein sudo um es zu sehen oder zu lesen.

    – Eric Leschinski

    7. August 2014 um 19:49 Uhr


  • php --info | grep error

    – sjas

    27. August 2014 um 13:21 Uhr


  • Für diejenigen, die nach einer Windows-Lösung suchen, verwenden Sie php --info | findstr /r /c:"error_log" um zu sehen, wo sich die Protokolldatei befindet.

    – Boom

    13. Mai 2015 um 17:00 Uhr

  • Es ist ziemlich seltsam für mich … Ich habe eine gehostete Website und PHP-Protokolle werden in derselben Datei wie Apache-Protokolle gespeichert … In meinem Admin-Bereich, in Protokollen, gibt es die Option, das vollständige Apache-Fehlerprotokoll anzuzeigen, wenn ich darauf klicke, Beispielsweise treten Fehler auf, wenn Benutzer Orte eingeben, an denen sie dies nicht tun sollten. Aber auch drin dieselbe Datei Es gibt Fehler, die PHP anzeigt.

    Benutzer5147563

    12. März 2017 um 10:35 Uhr

  • @soaku Wenn Sie fastcgi verwenden, läuft Apache selbst nicht mit PHP. Wenn Sie mod_php verwenden, das Apache-Modul ist, verarbeitet Apache PHP. Das bedeutet, dass bei der Verwendung von mod_php Fehler in Apache-Protokollen auftreten können und wahrscheinlich sein werden, aber dies ist bei der Verwendung von cgi oder fastcgi nicht der Fall

    – Gall Annonim

    7. Juni 2018 um 9:20 Uhr

Wo speichert PHP das Fehlerprotokoll PHP 5 Apache FastCGI und
Adam Arold

PHP speichert Fehlerprotokolle /var/log/apache2 wenn PHP ein Apache2-Modul ist. Gemeinsam genutzte Hosts speichern häufig Protokolldateien in Ihrem Stammverzeichnis /log Unterordner. Aber … wenn Sie Zugang zu einem haben php.ini Datei können Sie dies tun:

error_log = /var/log/php-scripts.log

Entsprechend RinogoKommentar von : Wenn Sie cPanel verwenden, wird die Master-Protokolldatei, nach der Sie wahrscheinlich suchen, (standardmäßig) unter gespeichert

/usr/local/apache/logs/error_log

Wenn alles andere fehlschlägt, können Sie den Speicherort der Protokolldatei mit überprüfen

<?php phpinfo(); ?>

  • “Php speichert Fehlerprotokolle in /var/log/apache2, wenn PHP ein Apache2 ist”, nicht auf RHEL usw., wo der Name des Pakets “httpd” ist. Man kann wirklich nicht davon ausgehen, dass der Name eines Pakets über Distributionen hinweg konsistent ist.

    – chelmertz

    14. Mai 2013 um 9:07 Uhr

  • FYI to Googlers – Wenn Sie cPanel verwenden, wird die Master-Protokolldatei, nach der Sie wahrscheinlich suchen, (standardmäßig) unter gespeichert /usr/local/apache/logs/error_log

    – Rinogo

    4. Dezember 2013 um 19:11 Uhr


  • aber überprüfen Sie den Abschnitt ‘error_log’ von <?php phpinfo(); ?> um den Pfad zu bestätigen

    – Doppelklinke

    27. Mai 2014 um 19:44 Uhr

  • Wo im Abschnitt phpinfo wird es angezeigt? In error_log sehe ich nur ‘error_log’ und keinen tatsächlichen Pfad für Schlüssel/Wert

    – Robert Sinclair

    28. August 2017 um 21:51 Uhr

  • Ich denke, das Problem von @Hi-Angel war der Versuch, ein tatsächliches PHP-Tag (anstelle von reinem PHP-Code) über … PHP-Shell (php -a)

    – igorsantos07

    19. Juni 2020 um 7:01 Uhr

Versuchen phpinfo() und nach “error_log” suchen

  • Es sagt nur Fehlerprotokoll kein Pfad angegeben. Ich denke, es liegt vielleicht daran, dass es sich in einer gemeinsam genutzten Hosting-Umgebung befindet und wenn wir Zugriff darauf hätten, würden wir alle anderen Site-Fehler sehen.

    – PHPLOVER

    26. Februar 2011 um 15:56 Uhr

  • @PHPLOVER sagt es dasselbe, wenn Sie es versuchen echo ini_get('error_log');?

    – chelmertz

    26. Februar 2011 um 16:27 Uhr

  • @PHPLOVER: Sie können die Berichtsebene einfach mit der Einstellung steuern error_reporting(E_ALL|E_STRICT);se.php.net/manual/en/function.error-reporting.php

    – chelmertz

    26. Februar 2011 um 16:39 Uhr

  • Meins sagt auch error_log, keine Ahnung wo ich danach suchen soll. Dies trifft bei Google auf Nr. 1, beantwortet es jedoch nicht.

    – HMR

    10. Juni 2014 um 7:30 Uhr

  • @Pacerier Ich zahle ungefähr 12 US-Dollar pro Monat für meine, aber Digital Ocean hat anscheinend eine kleine Maschine für 5 US-Dollar: digitalocean.com/pricing Nicht allzu vertraut mit Hosting, aber Sie könnten wahrscheinlich etwas über Google finden.

    – chelmertz

    2. März 2015 um 12:57 Uhr

1647059048 990 Wo speichert PHP das Fehlerprotokoll PHP 5 Apache FastCGI und
Kumpel

Linux

php --info | grep error 

Das Terminal gibt den Speicherort des Fehlerprotokolls aus.

Windows

php --info | findstr /r /c:"error_log"

Die Eingabeaufforderung gibt den Speicherort des Fehlerprotokolls aus.

Zum Festlegen des Protokollspeicherorts

Öffne dein php.ini und füge folgende Zeile hinzu:

error_log = /log/myCustomLog.log

Danke chelmertz und Boom für diese (Kommentare zur Frage).

  • ich bin auf linux. Dies erwähnt keinen Protokollspeicherort für mich.

    – Sirex

    24. März 2016 um 1:27 Uhr

  • @ Sirex tut es php -info etwas ausgeben? Sie müssen sich vergewissern php ruft tatsächlich PHP zum Ausführen auf …

    – Klub

    8. April 2016 um 14:43 Uhr


  • Es ist auch möglich, dass PHP derzeit nichts protokolliert. Wenn das der Fall ist, können Sie Ihre öffnen php.iniund einstellen error_reporting zu E_ALL & ~E_DEPRECATED & ~E_STRICToder welche Fehler Sie auch immer sehen möchten, dann setzen error_log in den Pfad zu dem Verzeichnis, in dem Ihre Fehler protokolliert werden sollen. (Hinweis: Dies ist kein vollständiger Pfad zu einer Datei, sondern nur zu einem Verzeichnis.)

    – Klub

    8. April 2016 um 14:52 Uhr

  • Ich habe nur gefunden alt meldet sich in /var/log/httpd/ an, wo die meisten Leute empfehlen, nachzusehen, aber auszuführen php --info | grep log wies mich auf /var/www/logs hin, wo sich die neuesten Protokolle befanden.

    – ChrisBob

    2. Februar 2017 um 16:38 Uhr

  • Nachdem Sie den Protokollspeicherort festgelegt haben, vergessen Sie nicht, Apache neu zu starten: sudo /etc/init.d/apache2 restart

    – BrianHenryIE

    3. Juli 2018 um 0:08 Uhr

Wo speichert PHP das Fehlerprotokoll PHP 5 Apache FastCGI und
Allie

Auf einen LAMPE Umgebung werden die PHP-Fehler standardmäßig an die folgende Datei weitergeleitet.

/var/log/httpd/error_log

Alle Zugriffsprotokolle kommen unter:

/var/log/httpd/access_log

1647059049 845 Wo speichert PHP das Fehlerprotokoll PHP 5 Apache FastCGI und
Erich Leschinski

So finden Sie Ihr PHP-Fehlerprotokoll unter Linux:

sudo updatedb

[sudo] password for eric:

sudo locate error_log

/var/log/httpd/error_log

Ein anderer gleichwertiger Weg:

sudo find / -name "error_log" 2>/dev/null

/var/log/httpd/error_log

Es scheint, dass standardmäßig PHP protokolliert nicht Fehler überall. Die error_log key in php.ini ist in allen Installationen, die ich gesehen habe, auskommentiert.

Generell ich:

  1. suchen php.ini Dateien. locate php.ini.

  2. Durchsuchen Sie diese Dateien nach der error_reporting Wert;

    Welches sollte auf eine beliebige Zusammenführung von PHP-Protokollebenen eingestellt werden, die für Sie ausreichen.,

    Zum Beispiel: E_ALL & ~E_DEPRECATED & ~E_STRICT

  3. Überprüf den error_log -Wert, um sicherzustellen, dass er auf eine tatsächliche Stelle zeigt und nicht auskommentiert ist.

    Der Standardwert gibt keinen vollständigen Pfad an, nur einen Dateinamen, ich weiß nicht, wohin dieser Pfad normalerweise aufgelöst wird. Wahrscheinlich /var/log/.

1647059050 831 Wo speichert PHP das Fehlerprotokoll PHP 5 Apache FastCGI und
Peter Mortensen

Es kann auch sein /var/log/apache2/error.log wenn du dabei bist Google Compute-Engine.

Und Sie können den Schwanz so anzeigen:

tail -f /var/log/apache2/error.log

  • Nicht nur Google Compute Engine. Die meisten LAMP-Installationen (unter Linux) ebenfalls.

    – Peter Mortensen

    28. September 2021 um 16:03 Uhr

992670cookie-checkWo speichert PHP das Fehlerprotokoll? (PHP 5, Apache, FastCGI und cPanel)

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy