Wie beende ich die Ausführung von httpd unter Mac OS X (10.11) El Capitan Server?

Wie beende ich die Ausführung von httpd unter Mac OS X (10.11) El Capitan Server?

Ich verwende OS X El Capitan mit der Server-App, die so konfiguriert ist, dass ich VPN-Zugriff auf mein Heimnetzwerk habe. Leider hat die Server-App beschlossen, eine Reihe vonhttpdProzesse, die nun auf den Ports 80, 443 und anderen lauschen, obwohl die Servereinstellungen fürWebsitesIstAUSund auf diesen Ports sollten keine Dienste gestartet werden.

Ich möchte oder brauche diese Dienste nicht aktiv und möchte, dass httpd beendet wird (oder gar nicht erst gestartet wird). Leider kann ich diese Prozesse weder beenden (sie starten einfach sofort neu) noch kann ich sie steuern durchstartenctl.

sudo lsof -i :80
httpd   422 root    5u  IPv6 0x7...     0t0  TCP *:http (LISTEN)
httpd   425 _www    5u  IPv6 0x7...     0t0  TCP *:http (LISTEN)

ps u 422
USER   PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND
root   422   0.0  0.0  2457156   6136   ??  Ss    5:55PM   0:00.07 /usr/sbin/httpd -D FOREGROUND -f /Library/Server/Web/Config/Proxy/apache_serviceproxy.conf -E /private/var/log

Beim Versuch:

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

/System/Library/LaunchDaemons/org.apache.httpd.plist: Could not find specified service

Wie also beende ich diese Prozesse und gebe diese Ports frei?

Ich weiß, dass es hier eine Konfigurationsdatei für den Apache-Server gibt:/Library/Server/Web/Config/Proxy/apache_serviceproxy.conf

Ich kann die folgenden Zeilen entfernen, um diese Ports zu entsperren, aber diehttpdProzesse laufen noch.

listen 80
listen 443

Antwort1

Der Apple-Proxy-Dienst ist der Dienst, der die Ports 80 und 443 beansprucht. Sie müssen diesen also stoppen.

sudo launchctl unload -w /Applications/Server.app/Contents/ServerRoot/System/Library/LaunchDaemons/com.apple.serviceproxy.plist

Antwort2

Sie können dies mit dem folgenden Befehl stoppen:

sudo apachectl stop

Antwort3

Dieser Befehl sollte sie alle töten:

sudo killall httpd

Sie werden beim nächsten Start erneut gestartet.

Antwort4

Falls andere auf diese Frage stoßen, indem sie suchen nachhttpdoderHafen 80aber die Server.app nicht ausgeführt wird, ist dies die Lösung für macOS Monterey 12.x und höher:

sudo launchctl bootout system/org.apache.httpd

verwandte Informationen