Błąd Ubuntu 18.04 z apache2

1

Próbowałem sudo systemctl restart apache2i otrzymałem ten wynik: Zadanie dla apache2.service nie powiodło się, ponieważ proces kontroli zakończył się z kodem błędu. Aby uzyskać szczegółowe informacje, zobacz „systemctl status apache2.service” i „journalctl -xe”.

Kiedy próbuję „systemctl status apache2.service”:

● apache2.service - serwer HTTP Apache załadowany: załadowany (/lib/systemd/system/apache2.service; włączony; preset dostawcy: włączony) Drop-In: /lib/systemd/system/apache2.service.d └─apache2 -systemd.conf Aktywny: nieudany (Wynik: kod wyjścia) od Pon 02.02.2019 03:02:35 UTC; 2min 3s temu Proces: 12193 ExecStart = / usr / sbin / apachectl start (kod = zakończony, status = 1 / AWARIA)

A kiedy próbuję: „journalctl -xe”:

Hint: You are currently not seeing messages from other users and the system.
      Users in groups 'adm', 'systemd-journal' can see all messages.
      Pass -q to turn off this notice.
-- Support: http://www.ubuntu.com/support
-- 
-- Unit UNIT has finished starting up.
-- 
-- The start-up result is RESULT.
Feb 11 02:39:01 ths systemd[4215]: Reached target Default.
-- Subject: Unit UNIT has finished start-up
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
-- 
-- Unit UNIT has finished starting up.
-- 
-- The start-up result is RESULT.
Feb 11 02:39:01 ths systemd[4215]: Startup finished in 70ms.
-- Subject: User manager start-up is now complete
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
-- 
-- The user manager instance for user 1001 has been started. All services queued
-- for starting have been started. Note that other services might still be starting
-- up or be started at any later time.
-- 
-- Startup of the manager took 70596 microseconds.
lines 1794-1816/1816 (END)

Próbowałem wielu rozwiązań z Google, a także próbowałem ponownie zainstalować apache i nadal pojawia się ten błąd. Jakakolwiek rada?

Edycja: sudo systemctl status apache2 daje:

> ● apache2.service - The Apache HTTP Server    Loaded: loaded
> (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
> Drop-In: /lib/systemd/system/apache2.service.d
>            └─apache2-systemd.conf    Active: failed (Result: exit-code) since Mon 2019-02-11 03:37:30 UTC; 1min 36s ago   Process:
> 21753 ExecStart=/usr/sbin/apachectl start (code=exited,
> status=1/FAILURE)
> 
> Feb 11 03:37:30 ths systemd[1]: Starting The Apache HTTP Server... Feb
> 11 03:37:30 ths apachectl[21753]: (98)Address already in use: AH00072:
> make_sock: could not bind to address [::]:80 Feb 11 03:37:30 ths
> apachectl[21753]: (98)Address already in use: AH00072: make_sock:
> could not bind to address 0.0.0.0:80 Feb 11 03:37:30 ths
> apachectl[21753]: no listening sockets available, shutting down Feb 11
> 03:37:30 ths apachectl[21753]: AH00015: Unable to open logs Feb 11
> 03:37:30 ths apachectl[21753]: Action 'start' failed. Feb 11 03:37:30
> ths apachectl[21753]: The Apache error log may have more information.
> Feb 11 03:37:30 ths systemd[1]: apache2.service: Control process
> exited, code=exited status=1 Feb 11 03:37:30 ths systemd[1]:
> apache2.service: Failed with result 'exit-code'. Feb 11 03:37:30 ths
> systemd[1]: Failed to start The Apache HTTP Server.

Edytuj konfigurację 2: $ apachectl

Syntax OK

xMeraki
źródło
Spróbuj apachectl configtest
TESTOWAĆ
Próbowałem i wynik byłSyntax OK
xMeraki

Odpowiedzi:

1

W wyniku sudo systemctl status apache2możemy zobaczyć następujące komunikaty:

... nie można powiązać z adresem [::]: 80 ...

... nie można powiązać z adresem 0.0.0.0:80 ...

Podejrzewam, że port 80 jest używany przez inną usługę. Użyj jednego z kolejnych poleceń, aby dowiedzieć się, która to usługa:

sudo lsof -i -n -P | grep ':80'
sudo netstat -peanut | grep ':80'

Następnie zatrzymaj (lub wyłącz) tę usługę i uruchom ponownie (włącz) Apache. Jeśli Apache zostanie pomyślnie włączony, możesz na stałe wyłączyć drugą usługę lub zmienić port 80 w jednej z dwóch usług konfliktu (Apache lub druga).

Bibliografia:

pa4080
źródło