Apache wird nicht ordnungsgemäß neu gestartet

Apache wird nicht ordnungsgemäß neu gestartet

Ich hatte einige Probleme beim Neustart von Apache mit 2000 virtuellen Hosts.

Ich verwende Apache 2.2.22 + PHP 5.4.6 auf CentOS 5.8 64-Bit.

Beim Neustartversuch wird Folgendes angezeigt:

    /etc/init.d/httpd restart
Stopping httpd:                                       [FAILED]
Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:80
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
                                                           [FAILED]

Wenn ich killall -9 httpdes mache, ist es für eine Weile ok und dann passiert es wieder :/

Antwort1

Für mich sieht es so aus, als ob Apache von Anfang an nicht lief, zumindest nicht unter der PID, unter der das Init-Skript ihn gestartet hat. Überprüfen Sie die Ausgabe von „ps auxwww“ (oder geben Sie sie hier ein).

Mein tiefstes Gefühl sagt mir, dass Ihr Apache-Root-Prozess abstürzt, die untergeordneten Prozesse jedoch am Leben bleiben und auf Port 80 lauschen. Wenn das so ist, sehen Sie in Ihrem Apache-Fehlerprotokoll und in den Systemprotokollen nach, was den Root-Prozess abstürzt.

Andere Möglichkeiten: Möglicherweise starten Sie Apache manuell außerhalb des Init-Skripts oder etwas anderes lauscht auf Port 80 (das würde jedoch nicht erklären, warum killall -9 httpd funktioniert).

Antwort2

Es war ein Paketproblem. Ich habe httpd aus dem Webtactic-Repo. Habe es auf das von Lxcenter umgestellt und es funktioniert sehr gut ;)

verwandte Informationen