[RaspberryPi] Apache-Webserver nach Updates nicht mehr erreichbar

J

Jxn

Gast
Hallo,

habe 'n Raspberry Pi 3 Model B, mit u.a. einem Apache2-Webserver, der lokal, aber auch über einen DynDns-Server von außerhalb erreichbar ist.

Ich habe vorhin ein paar Updates mit dem Command
sudo apt-get upgrade && sudo apt-get update
gemacht. Dort las ich in der Kommandozeile auch zwischendurch immer mal wieder Apache2, wusste aber nicht was es damit auf sich hat.
Nach den Updates, die eine Weile gedauert haben, weil ich es auch etwas länger nicht mehr gemacht habe, habe ich das RP neugestartet mit

Nachdem es wieder da war, konnte ich den Webserver aber nicht mehr erreichen, weder intern noch extern über den DynDns-Server. Ich habe mir die Config-Datei von Apache angeschaut, die sah aber noch gleich aus, also da hat sich nichts geändert.

Mit
sudo /etc/init.d/apache2 start
bekomme ich folgende Fehlermeldung:
0f10a022a0.png




Die Updates habe ich auch eigentlich nur gemacht, weil ich MySql noch einmal neu installieren wollte. Dabei habe ich mich an folgende Schritte gehalten:
https://stackoverflow.com/a/10861439
Aber selbst den Datenbank-Server kann ich über .../phpmyadmin nicht erreichen.

Wisst ihr vielleicht wo der Fehler sein könnte?

Hier meine Software-Info und so:

2d471d246b.png


Grüße,
Janglx
 
Zuletzt bearbeitet von einem Moderator:
In der Fehlermeldung wird doch schon der Hinweis gegeben, wo du mehr Infos findest. Was siehst du da?
 
mstsc_2017-08-02_19-17-53.pngmstsc_2017-08-02_19-19-42.png
Also ich lese dort jetzt dass er die config-Datei nicht mehr findet, richtig?
 
majusss schrieb:
An deiner Stelle würde ich mir nginx anschauen, keiner verwendet mehr Apache.

Ist eine Überlegung wert, dennoch muss ich das aktuelle Problem erstmal lösen, da der Webserver wieder online gehen muss. :/
 
Eine Konfigurationsdatei für phpmyadmin fehlt ihm.
 
Ich versuch mal in Kürze deine Probleme zu sortieren.
Seit Debian 8 "Jessie" und damit auch Raspbian ist wird nicht mehr SysVinit, sondern systemd als Init-System genutzt und sowas wie
Code:
sudo /etc/init.d/apache2 start
wird nur noch als Fallback genutzt. Mit systemd ist statt dessen der Befehl
Code:
systemct start|stop|enable|disable|... dienstname
der Anlaufpunkt für das Verwalten der Dienste. Also im Falle von Apache2 wäre es
Code:
Starten: systemctl start apache2.service
Stoppen: systemctl stop apache2.service
Beim Booten automatisch starten: systemctl enable apache2.service

Alles jeweils mit Root-Rechten auszuführen
Asl gute Informationsquelle zum Umgang mit systemd könnte ich dir das Wiki von Arch Linux empfehlen https://wiki.archlinux.org/index.php/Systemd


Dann mal die Fehlermeldungen der Reihe nach

In Zeile 224 der Datei /etc/apache2/apache2.conf kann er die Datei /etc/phpmyadmin/apache.conf nicht öffnen, weil die nicht existiert. Daher bricht dein Apache den Start ab und ist dann logischerweise, mit allem was darüber aufgerufen wird (phpmyadmin z.B.), auch nicht erreichbar.

In deinem Anfangspost steht in der Fehlermeldung zusätzlich "Warning: Unit file of apache2.service changed on disk ..." mit der Empfehlung, einen bestimmten Befehl auszuführen. Den Befehl mal mit Root-Rechten ausführen, damit systemd mit dem aktuellen Stand der Datei arbeitet.
Sowas wie dienstname.service ist bei systemd das Gegenstück zu den Scripten unter /etc/init.d/servicename bei SysVinit. Wobei Letztere, wenn noch vorhanden, intern die Aufrufe eigentlich nur noch in die entsprechenden systemctl-Aufrufe "übersetzen" dürften.
 
mibbio schrieb:
Ich versuch mal in Kürze deine Probleme zu sortieren.
Seit Debian 8 "Jessie" und damit auch Raspbian ist wird nicht mehr SysVinit, sondern systemd als Init-System genutzt und sowas wie
Code:
sudo /etc/init.d/apache2 start
wird nur noch als Fallback genutzt. Mit systemd ist statt dessen der Befehl
Code:
systemct start|stop|enable|disable|... dienstname
der Anlaufpunkt für das Verwalten der Dienste. Also im Falle von Apache2 wäre es
Code:
Starten: systemctl start apache2.service
Stoppen: systemctl stop apache2.service
Beim Booten automatisch starten: systemctl enable apache2.service

Alles jeweils mit Root-Rechten auszuführen
Asl gute Informationsquelle zum Umgang mit systemd könnte ich dir das Wiki von Arch Linux empfehlen https://wiki.archlinux.org/index.php/Systemd


Dann mal die Fehlermeldungen der Reihe nach

In Zeile 224 der Datei /etc/apache2/apache2.conf kann er die Datei /etc/phpmyadmin/apache.conf nicht öffnen, weil die nicht existiert. Daher bricht dein Apache den Start ab und ist dann logischerweise, mit allem was darüber aufgerufen wird (phpmyadmin z.B.), auch nicht erreichbar.

In deinem Anfangspost steht in der Fehlermeldung zusätzlich "Warning: Unit file of apache2.service changed on disk ..." mit der Empfehlung, einen bestimmten Befehl auszuführen. Den Befehl mal mit Root-Rechten ausführen, damit systemd mit dem aktuellen Stand der Datei arbeitet.
Sowas wie dienstname.service ist bei systemd das Gegenstück zu den Scripten unter /etc/init.d/servicename bei SysVinit. Wobei Letztere, wenn noch vorhanden, intern die Aufrufe eigentlich nur noch in die entsprechenden systemctl-Aufrufe "übersetzen" dürften.

Okay, den Befehl der empfohlen wurde habe ich ausgeführt.

Aber was mache ich jetzt mit der Fehlermeldung zu der fehlenden Config-Datei? Es gibt nicht mal den Ordner "phpmyadmin".
 
Ich vermute mal, dass mit deiner phpmyadmin-Installation etwas nicht stimmt oder durch das Upgrade etwas dran geändert wurde, so dass die Dateien nicht mehr dort sind, wo sie vorher waren. Die könntest du als Nächstes einmal überprüfen.

Und du solltest wirklich über einen Wechsel des Webservers nachdenken. Apache2 ist doch vergleichsweise fett.
Ich weiß jetzt nicht, wie viel bei dir in der Config aus Kommentarzeilen besteht und was dein Apache alles bereit stellt, aber >224 Zeilen + was er noch aus der /etc/phpmyadmin/apache.conf lesen würde, finde ich schon recht umfangreich.

Ich nutze zwar nicht Nginx, sondern Lighttpd und komme mit den wichtigsten Grundeinstellungen, SSL Optionen und Weiterleitung auf https auf gerade mal 87 Zeilen (inkl. Kommantare & Leerzeilen.
Code:
$ wc -l /etc/lighttpd/*
  28 /etc/lighttpd/hosts.conf
  59 /etc/lighttpd/lighttpd.conf
  87 total

Computerbase, Heise, Twitch, Wikipedia nutzen zum Beispiel auch alle Nginx.
 
Naja... So ganz für bare Münze sollte man die Aussage nicht nehmen... Ja viele nutzen nginx als Webserver (so für den User ersichtlich), real aber nicht ausschließlich sondern verstärkt als Loadbalancer und reverse proxy. Funktioniert super 1a, keine Frage aber sobald man dynamisch generierten Content hat streicht nginx die Segel da dies eben von nachgelagerter Software erledigt werden soll/muss wie z.B. der gute alte Apache oder Tomcat, JBoss, etc.
 
Zurück
Oben