Apache unter OSX: „läuft nicht“ und „wird bereits verwendet“ für alle Prozesse?

Apache unter OSX: „läuft nicht“ und „wird bereits verwendet“ für alle Prozesse?

Betriebssystem: macOS Mojave 10.14.6
HTTP-Server: Apache 2.4.55

Beim Versuch, den Apache-Server neu zu starten, erhalte ich die Meldung „Adresse wird bereits verwendet …“. Hm, also muss es einen Prozess geben, der diesen Port abhört, oder? Mit dieser Zeile (von woanders) im Terminal können Sie sehen, was los ist:

ps auxw | grep  httpd

es gibt

_www              1317   0.0  0.1  4361716   7452   ??  S    12:39AM   0:00.10 /usr/sbin/httpd -D FOREGROUND
_www              1303   0.0  0.1  4361716   7364   ??  S    12:39AM   0:00.23 /usr/sbin/httpd -D FOREGROUND
root               104   0.0  0.1  4359628   5956   ??  Ss   12:20AM   0:01.07 /usr/sbin/httpd -D FOREGROUND
ausername         7671   0.0  0.0  4277256    804 s003  S+   12:21PM   0:00.00 grep httpd
_www              7654   0.0  0.0  4359604   1004   ??  S    12:21PM   0:00.00 /usr/sbin/httpd -D FOREGROUND

Richtig, also versuche ich jetzt, es zu stoppen

httpd -k stop

was gibt

httpd (no pid file) not running

Ok, dann versuche ich es mit

/usr/sbin/httpd -k stop
httpd (pid 104?) not running

Hm... vielleicht:

apachectl -k stop
httpd (no pid file) not running

Was läuft also? Und wie starte ich es neu? Dies ist das erste Mal, dass ich mit dieser Art von Fehlern in Bezug auf Apache unter OSX zu tun habe.

Ich habe geprüftdieser Threadaber nichts hat bei mir funktioniert. grep -ri listen /etc/apache2Ich habe eine Liste mit mehreren, Listen: 80aber alle davon befanden sich in httpd.conf-Dateien mit .bak, .original, ~previous, .pre-update. Alle außer einem wurden für httpd verwendet. Woher weiß ich das? httpd -VDas ergibt:

-D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/opt/local"
 -D SUEXEC_BIN="/opt/local/bin/suexec"
 -D DEFAULT_PIDLOG="var/run/apache2/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="etc/apache2/httpd.conf"

und diese letzte Datei enthält diese Zeilen:

Listen 8080
Listen 80

Jetzt habe ich keine Ideen mehr.

PS: Nachdem ich die Protokolle durchforstet habe, ist dies nun ein deutliches Zeichen dafür, dass ich mehrere Apache-Installationen habe (wahrscheinlich Überbleibsel von Homebrew-Installationen). Diese beiden Zeilen:

[Fri Feb 17 00:22:56.067511 2023] [mpm_prefork:notice] [pid 104] AH00163: Apache/2.4.46 (Unix) PHP/7.3.33 LibreSSL/2.5.5 configured -- resuming normal operations
[Fri Feb 17 00:22:56.067613 2023] [core:notice] [pid 104] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'

In der ersten Zeile steht, dass Apache/2.4.46 ausgeführt wird, aber das ist nicht die Version, die ich bekomme, wenn ich es ausführe. httpd -vDie zweite Zeile scheint den Startbefehl für den Apache-Prozess zu protokollieren. Wo könnte diese Befehlszeile möglicherweise zu finden sein? Hat mit dem Startvorgang zu tun, oder?

verwandte Informationen