Debians Apache2-Fehlerprotokoll


3

Ich bin neu in Debian und neu auf dem Apache2-Webserver. Ich habe einige Einstellungen für den virtuellen Host vorgenommen und Apache2 über neu gestartet service apache2 reload. Ich habe diese zurück: [FAIL] Reloading web server config: apache2 failed!. Das wundert mich nicht. Ok, sehen wir uns das Fehlerprotokoll an, was schief gelaufen ist /var/log/apache2/error.log. Gibt es einen anderen Ort, an dem das Apache2-Protokoll fehlschlägt?


2
Laufen Sie sudo apache2ctl configtestund sehen Sie, was dabei herauskommt.
ein Lebenslauf am

Protokolliert Ihr virtueller Host Fehler in einer eigenen Fehlerprotokolldatei? Wenn Sie beispielsweise eine ErrorLog-Zeile in Ihrem VirtualHost-Abschnitt für diese Site haben, in der angegeben ist, dass Fehlermeldungen in einem separaten Fehlerprotokoll für diesen virtuellen Host abgelegt werden, müssen Sie diese Fehlerprotokolldatei überprüfen.
Mondpunkt

@ Moonpoint Ja, ich habe eine ErrorLogLeitung, aber von Apache2 wurde keine Protokolldatei erstellt.
Francesco

@Francesco Hat Apache Schreibzugriff auf das Verzeichnis, das Sie für das ErrorLog angegeben haben? Sie können die Berechtigungen für das Verzeichnis mit "ls -ld path_to_directory" anzeigen, indem Sie den Pfad und den Verzeichnisnamen, die Sie für ErrorLog für "path_to_directory" angegeben haben, durch "ls -ld path_to_directory" ersetzen. Hinweis: In einer Apache-Konfigurationsdatei können mehrere ErrorLog-Zeilen vorhanden sein. Es kann einen außerhalb des VirtualHost-Abschnitts und einen anderen innerhalb eines <VirtualHost> -Containers geben, der zutreffend ist, sofern er vorhanden ist.
Mondpunkt

@ Moonpoint Ja, Apache tut dies, aber error.log ist leer. Vielleicht ist es ein zu schlechter Konfigurationsfehler, der an einer anderen Stelle protokolliert wird, könnte es sein?
Francesco

Antworten:


2

Wenn Sie Probleme mit Ihrer Apache 2-Konfiguration vermuten, können Sie dies am einfachsten (und sichersten!) Mit dem Befehl überprüfen sudo apache2ctl configtest.

Wenn alles korrekt ist, wird es gedruckt Syntax OK(oder etwas Ähnliches), aber wenn es Fehler gibt, werden Sie genau darüber informiert, was diese Fehler sind. Was es nicht tut, ist, dass Apache die Konfiguration tatsächlich in die laufende Server-Instanz lädt, damit Sie nichts kaputtmachen. Es wird auch nichts in die Protokolldateien Ihres Webservers geschrieben. Wenn es configtestwieder sauber wird, sollte die Konfiguration zumindest größtenteils in Ordnung sein.

Wenn Sie überzeugt sind, dass die Konfiguration wahrscheinlich korrekt ist, verwenden Sie apache2ctl gracefuloder apache2ctl restart, um die neue Konfiguration tatsächlich zu verwenden.

Ich empfehle, die Manpage zu lesen, apache2ctlum einige der feineren Details zu erfahren. Insbesondere heißt es in der Manpage, dass configtest"nicht alle Fehler abgefangen werden", aber meiner Erfahrung nach werden die meisten Fehler abgefangen, die im wirklichen Leben beim Ändern der Konfiguration auftreten.


0

Die meisten Konfigurationen sind defekt, oder das Paket selbst ist defekt

Versuchen sudo apt pruge apache2

dann sudo apt install apache2

Dadurch werden die Konfiguration und Apache entfernt

Wenn dies nicht funktioniert, überprüfen Sie die Ports und die / www / -Dateien (.html und .php)

Für mich ist es normalerweise ein Portfehler mit meiner Firewall (Wenn Sie vergessen haben, was in den Protokollen aufgetaucht ist, kann es sein, dass dies nicht der Fall ist)


pruge?
Scott

Aber auch, was bedeutet "Überprüfen der Ports und der /www/Dateien ( .htmlund .php)"?
Scott

@ Scott purgeEntschuldigung, es entfernt sowohl ein Programm als auch Konfigurationsdateien
Raccoondude

Überprüfen Sie, ob Ihre Ports geöffnet sind und nicht von einer Firewall blockiert werden. Überprüfen Sie, ob Ihre Dateien mit Apache kompatibel sind. (Stellen Sie sicher, dass Sie PHP installieren.)
Raccoondude
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.