Mam trudności z uruchomieniem Apache przez MAMP.
Od kilku miesięcy rozwijam się w MAMP i wszystko działa dobrze. Jednak dziś rano Apache magicznie przestał działać, mimo że nie wprowadzałem żadnych zmian w konfiguracji ani nic.
Sprawdzanie mojego apache_error.log Widzę to za każdym razem, gdy próbuję uruchomić Apache przez MAMP:
[Fri Sep 09 12:16:19 2011] [alert] (EAI 8)nodename nor servname provided, or not known: mod_unique_id: unable to find IPv4 address of "unknown040cced5b2fe"
Configuration Failed
Jakieś pomysły? Jestem trochę zakłopotany.
telnet 127.0.0.1 80
(podobnie jak 8080 i 8888) i za każdym razem otrzymywałem:Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused telnet: Unable to connect to remote host
Odpowiedzi:
Jeśli MAMP zapewnia to
apachectl
, co zwykle , użyłbym tego do przetestowania konfiguracjiapachectl configtest
.Aktualizacja:
Aby dowiedzieć się, który program już używa (tj. Nasłuchuje lub jest podłączony do), użyj portu 80
netstat -anp
jako root.Aktualizacja 2:
Pamiętaj, że musisz być rootem, aby połączyć się z uprzywilejowanymi numerami portów (poniżej 1024)
źródło
apachectl configtest
zwraca „Składnia OK”, ale samo uruchomienie apachectl wyświetla następujące wyniki:(13)Permission denied: make_sock: could not bind to address [::]:80 (13)Permission denied: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs
netstat -anp
jako root) i zatrzymaj to.Właśnie natrafiłem na ten sam problem i rozwiązałem go, zmieniając arbitralnie mój port Listen.
Miałem ten sam błąd, który miałeś, z tym wyjątkiem, że korzystałem z niestandardowego portu> 1024. Po zmianie mojego wyboru Apache zaczął również zapisywać w swoim dzienniku błędów, czego odmówił, oprócz podobnych
wiadomość. Ponadto, mimo że
netstat
nie pokazywał, że mój port jest zajęty, Apache poświęcił dość dużo czasu na odpowiedź, co zwykle wskazywało na niezgodność gniazd.źródło
W
/usr/lib
istnieje pliklibpq.5.3.dylib
podczas Apache szukalibpq.5.dylib
po I skopiowany plik i nazwał golibpq.5.dylib
to działało.źródło
Ponownie zadziałało po skomentowaniu tego wiersza w httpd.conf:
# LoadModule unique_id_module libexec/mod_unique_id.so
źródło