Я пытаюсь установить apache2, я столкнулся с этой проблемой. Дайте мне несколько решений
Перезапуск веб-сервера apache2 выдает ошибку:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
[fail]
* The apache2 instance did not start within 20 seconds. Please read the log files to discover problems
/etc/apache2/apache2.conf
,/etc/apache2/sites-enabled/000-default.conf
и если вы определили свой/etc/apache2/sites-available/yourFile.conf
Ответы:
Пробег
и вы получите вывод что-то вроде
обратите внимание на pid процесса прослушивания порта, в моем случае это был 1066. Затем запустите
Не забудьте изменить pid на тот, который прослушивает порт, он может отличаться от 1066
источник
Как и многие серверные приложения, вы не можете привязать порт, уже связанный с другим приложением (в нашем случае это порт 80
http
). Причина вашей ошибки в том, что Apache не может подключиться к порту 80, потому что что-то еще там уже прослушивается.Запустите
sudo netstat -tulpn | grep :80
и найдите имя процесса, который прослушивает порт 80. Затем либо перенастройте, либо удалите эту программу.источник
На каком типе сервера вы работаете?
Для устранения первой ошибки
Вам нужно будет отредактировать
httpd.conf
файл, добавив эту строку:Чтобы устранить другие ошибки, вы должны убедиться, что вы пытаетесь запустить Apache с привилегиями root.
источник
httpd.conf
файла. Могу ли я поставить эту линию вapache2.conf
?ServerName
в неhttpd.conf
имеет никакого эффекта.У меня такая же проблема.
Я попытался установить LAMP на WSL, следуя этому блогу: LAMP на WSL, но когда я выполнил эту команду:
Я получил эту же ошибку:
Ранее я пытался установить Nginx на Windows должным образом и потерпел неудачу, но вспомнил, что привязал Nginx к порту 80. Проблема в том, что я не являюсь экспертом по Linux и не могу увидеть в файле apache2 conf область для привязки к порту.
Я пробовал бегать:
и ничего не получил. Я также перенаправил порт в маршрутизаторе, поэтому не мог понять, как устранить ошибку.
Я знаю, что Nginx не работал, поэтому с портом 80 должно было быть все в порядке, за исключением chrome, который, как я полагаю, также работал на порте 80. Поэтому, не зная, что произойдет, я выполнил команду
sudo
следующим образом:и я получил:
Продолжая команду запуска с
sudo
, Apache2 имеет право на запуск. Это краткосрочное решение, потому что не рекомендуется запускать Apache2 с правами суперпользователя (поэтому мы проинформированы), поэтому решение все еще существует, но сейчас я могу, по крайней мере, продолжить свои тесты.Если кто-нибудь знает решение, пожалуйста, сообщите нам.
источник
sudo
, чтобы оно имело этот формат ... надеюсь, вы понимаете это.Вы можете установить новый веб-сервер или что-либо зарезервировать порт 80, проверить ваши услуги и то, что вы недавно установили
источник
В моем случае это была не проблема с журналами, а на самом деле с
Listen
директивой - было установлено «Прослушивание по IP-адресу, который не существует» (когда я переместил свой ноутбук в другую сеть).Это появилось только после того, как я удалил службу, переустановил ее и сказал:
(OS 10049) The requested address is not valid in its context. : AH00072: make_sock: could not bind to address 0.0.0.0:80 AH00015: Unable to open logs
Поэтому я только что прокомментировал оскорбительную директиву Listen (и оставил других) вуаля.
Я знаю, что Q касается Ubuntu, но некоторые другие люди могут приземлиться здесь, столкнувшись с проблемой.
источник