Macports Apache2 „Bindung an Adresse nicht möglich“

Macports Apache2 „Bindung an Adresse nicht möglich“

Ich habe Apache2 auf Mac OS X 10.7.4 installiert überMacports

Seit kurzem kann ich nicht mehr auf mein Localhost-Verzeichnis zugreifen. Ich erhalte eine 404-Antwort, kann aber auf 127.0.0.1 zugreifen.

Ich habe versucht, Apache neu zu starten:

sudo /opt/local/apache2/bin/apachectl stop
sudo /opt/local/apache2/bin/apachectl start

und ich erhalte die folgenden Fehler:

(48)Address already in use: make_sock: could not bind to address [::]:80
(48)Address already in use: make_sock: could not bind to address [::]:443

Ich habe überprüft, dass die Webfreigabe deaktiviert ist. Es scheint, als würde Apache diese Punkte bereits verwenden oder der Dienst wird nicht ordnungsgemäß beendet.

Wie kann ich herausfinden, was die Ports verwendet?

Antwort1

Der Shell-Befehl "lsof" kann Ihnen genau sagen, welcher Prozess welche Dateien und Socket-Adressen im System verwendet. Probieren Sie einfach einen

sudo lsof

oder, da die Ausgabe viel besser sein wird

sudo lsof | less

und suchen Sie nach etwas auf den HTTP-Ports. Wie üblich

man lsof

erhalten Sie weitere Informationen zum Anpassen der Ausgabe.

Antwort2

Zur Referenz: In Mountain Lion 10.8.2 hat es funktioniert, indem man einfach den Apache2-Dienst gestoppt hat:

sudo apachectl stop

Auf diese Weise werden die httpd-Prozesse nicht neu gestartet und der Macports Apache2-Server wird danach einwandfrei gestartet.

Antwort3

Auf meinem Mac mit Mojave (10.14.1) konnte Apache plötzlich kein IPv4 mehr bedienen und gab mir dann ERROR 403. Ich habe versucht, alle Apache ( sudo killall httpd) zu beenden... und die PIDs mit

sudo lsof | grep AMP | grep apache

hat nicht einmal funktioniert... nur IPv6 war verfügbar... immer noch FEHLER 403

Was bei mir funktioniert: Deaktivieren Sie den integrierten Apache-Server von macOS.

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

danach:

sudo apachectl -k restart

sei glücklich :)

verwandte Informationen