2012-07-06 7 views
9

Używam wersji Apache 2.2.20 (ubuntu) i próbuję użyć niestandardowej konfiguracji httpd.conf, ale otrzymuję następujący komunikat o błędzie i jestem wdzięczny za wszelkie wskazówki, które można mi przekazać. Jestem częścią zespołu programistów i otrzymałem ten niestandardowy plik httpd.conf, więc nie zakładam, że jest to przyczyna problemu (ale nie wykluczam całkowicie takiej możliwości).Problemy z serwerem http Apache

uruchomić polecenie „sudo apache2ctl -k restart” i uzyskać następujący wynik

[Fri Jul 06 11:33:34 2012] [warn] module ssl_module is already loaded, skipping 
[Fri Jul 06 11:33:34 2012] [warn] module rewrite_module is already loaded, skipping 
httpd not running, trying to start 
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80 
no listening sockets available, shutting down 
Unable to open logs 
Action '-k restart' failed. 
The Apache error log may have more information. 

dwóch ostrzeżeń mogę pozbyć jeśli I ustosunkowania się linie (poniżej) w moim pliku httpd.conf . Czy naprawdę chcę to zrobić? Gdzie mogę się udać, aby sprawdzić, czy te moduły są załadowane gdzieś indziej i że komentowanie ich w moim pliku conf nie zaszkodzi cokolwiek?

LoadModule ssl_module modules/mod_ssl.so 
LoadModule rewrite_module modules/mod_rewrite.so 

Jeśli chodzi o błąd związany z niemożnością powiązania z portem 80, nie mogę go usunąć. Kiedy zrobić „sudo netstat -lnp | grep: 80” pojawia się następujący

tcp  0  0 0.0.0.0:80  0.0.0.0:*  LISTEN  6233/apache2 

wiem, że powyższe oznacza, że ​​wyjście apache myśli swój bieg i przez pewien czas byłem nawet w stanie zobaczyć „It Pracowałem! " na stronie, gdy nawigowałem do localhost, ale TERAZ dostaję tylko serwer "Not Found Apache/2.2.20 (ubuntu) na porcie localhost 443", kiedy przechodzę do tej strony. Również nie mogę zabić procesu apache, który uruchamia polecenie "kill -9 6233" tylko zmienia PID Apache'a (na przykład z 6233 na 6234). Próbowałem również użyć polecenia "sudo etc/init.d/apache2 stop", generuje komunikat "* Zatrzymywanie serwera apache2 [OK]", ale znowu widzę proces apache2 zajmujący port 80.

Pomysł na którąkolwiek z tych kwestii byłby doceniony.

+0

Wygląda na to, że masz już uruchomioną inną instancję Apache. Spróbuj wyszukać z katalogu głównego (/) dla "apache" ?? – blearn

+0

Uruchomiłem ponownie komputer i teraz nie ma już procesu działającego na porcie 80 (według "sudo netstat -lnp | grep: 80"). Jednak Apache nie będzie działał.Pojawia się następujący błąd "(98) Adres już w użyciu: make_sock: nie można powiązać z adresem 0.0.0.0:80 brak gniazd słuchających, wyłączanie Nie można otworzyć logów Nie można uruchomić akcji" -k start "." – OrwellHindenberg

+0

Mam nadzieję, że nie mylę problemu, ale skomentowałem Listen 80 i Listen 443 w moim pliku httpd.conf. Uruchomiłem polecenie "apache2ctl -k start". Nie otrzymałem żadnej wiadomości, a teraz widzę apache2 działający na porcie 80, jednak kiedy przechodzę do localhosta, wciąż docieram do strony "Not Found" – OrwellHindenberg

Odpowiedz

9

Look: "Moduł xxx_module jest już załadowany"

odpowiedź: ładujesz te moduły więcej niż jeden raz. Spróbuj wyszukać i komentować/usuń problematyczne linie:

W CentOS/RHEL:

grep ssl_module -rI /etc/httpd/* 
/etc/httpd/conf/httpd.conf:LoadModule ssl_module /usr/lib64/httpd/modules/mod_ssl.so 
/etc/httpd/conf.d/ssl.conf:LoadModule ssl_module modules/mod_ssl.so 

W tym przypadku^I wykomentowane linię /etc/httpd/conf/httpd.conf więc wszystkie rzeczy SSL żyć w /etc/httpd/conf.d/ssl.conf

samo dla rewrite_module

grep rewrite_module -rI /etc/httpd/* 

W systemie Debian/Ubuntu:

grep ssl_module -rI /etc/apache2/* 
2

Miałem podobny problem, gdy użyłem kluczy SSL z hasłami. Co zrobiłem, aby go uruchomić było: sudo pkill apache2 sudo /etc/init.d/apache2 rozpocząć

nie polecam usuwanie Posłuchaj *: 80 z apache config.