Macports Apache httpd non si avvia su Mac OS X Yosemite


0

Quindi, dopo 2 giorni di difficoltà a capire perché Macports Apache ha httpdimprovvisamente deciso di smettere di funzionare, alla fine è arrivato a questo:

$ sudo bash -x /opt/local/apache2/bin/apachectl -k start
ARGV='-k start'
HTTPD=/opt/local/apache2/bin/httpd
test -f /opt/local/apache2/bin/envvars
. /opt/local/apache2/bin/envvars
test x '!=' x
DYLD_FALLBACK_LIBRARY_PATH=/opt/local/lib
export DYLD_FALLBACK_LIBRARY_PATH
LYNX='lynx -dump'
STATUSURL=http://localhost:80/server-status
ULIMIT_MAX_FILES=
'[' x '!=' x ']'
ERROR=0
'[' 'x-k start' = x ']'
case $ARGV in
/opt/local/apache2/bin/httpd -k start
ERROR=1
exit 1

Questo è l'elefante nella stanza, ERROR=1significa qualcosa?

Ho eseguito il debug e ottengo lo stesso errore sopra:

$ sudo bash -x /opt/local/apache2/bin/apachectl -k start -e Debug -E /dev/stdout

Apache Mac locale non restituisce errori e si httpdavvia normalmente, fornisce questo output:

$ sudo bash -x /usr/sbin/apachectl -k start
ACMD=-k
ARGV='-k start'
HTTPD=/usr/sbin/httpd
test -f /usr/sbin/envvars
. /usr/sbin/envvars
test x '!=' x
DYLD_LIBRARY_PATH=/usr/lib
export DYLD_LIBRARY_PATH
LYNX='lynx -dump'
STATUSURL=http://localhost:80/server-status
ULIMIT_MAX_FILES=
LAUNCHCTL=/bin/launchctl
LAUNCHD_JOB=/System/Library/LaunchDaemons/org.apache.httpd.plist
'[' x '!=' x ']'
ERROR=0
'[' 'x-k start' = x ']'
case $ARGV in
/usr/sbin/httpd -k start
ERROR=0
exit 0

Questo è probabilmente il mio ultimo successo, dopo 2 giorni sono disposto a rinunciare!

Risposte:


1

ERRORE = 1 significa che lo script bash sta impostando la variabile di ambiente "ERRORE" sul valore 1.

apachectl fondamentalmente fa:

$HTTPD $ARGV
ERROR=$?

exit $ERROR

Il problema è che /opt/local/apache2/bin/httpd -k startsta uscendo con un codice di uscita di 1. Dovresti capire perché. Hai detto di correre sudo /opt/local/apache2/bin/httpd -k start -e Debug -E /dev/stdoutma non hai visto errori. Qual era il codice di uscita?


Scusa, volevo dire sì quando corro sudo bash -x /opt/local/apache2/bin/apachectl -k start -e Debug -E /dev/stdoutottengo anche ERRORE = 1 ed esco 1
Max

È possibile che sia correlato a DYLD_FALLBACK_LIBRARY_PATH, perché se noti l'Apache locale che lo esegue non utilizza il fallbackDYLD_LIBRARY_PATH
Max

1

Ho ricordato in precedenza su MAMP che il modulo chiamato unique_id_modulestava impedendo l'avvio. Quindi l'ho disabilitato httpd.confe ora Macports Apache inizia senza errori.

Basta decommentarlo in questo modo:

#LoadModule unique_id_module modules/mod_unique_id.so
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.