Анализ ситуации
Из вашего журнала:
Адрес уже используется: AH00072: make_sock: не удалось выполнить привязку к адресу [::]:80
Адрес уже используется: AH00072: make_sock: не удалось выполнить привязку к адресу 0.0.0.0:80
нет доступных прослушивающих сокетов, выключение
Произошла коллизия относительно вашего TCP-порта 80. Есть две возможные причины проблемы на вашем сервере:
- Некоторые приложения или службы в фоновом режиме используют тот же порт TCP 80, что и Apache.
- Неправильный порт+адрес/сокет в конфигурации Apache. Это менее вероятная причина, чем №1.
Решение
Установите net-tools и используйте netstat для получения информации о том, какой процесс/приложение занимает TCP 80 в вашей системе.
sudo apt-get установить сетевые инструменты
судо netstat-lntp | grep -e ":80" -e "PID"
Теперь вы видите номер процесса и имя приложения, которое использует порт 80. Отключите это приложение или измените настройки приложения, чтобы использовать порт, отличный от TCP 80.
Подробные списки процессов, которые можно использовать для поиска сведений о приложении, прослушивающем ваш TCP-порт:
пс -эф
пс-доп
Найдите номер процесса, полученный от нетстат
вывод.
Расширенный ответ после новой информации в комментарии
Судя по вашему ответу, у вас конфликтуют 2 экземпляра Apache.
Перезагрузите сервер. В «свежей» системе используйте эти команды и вставьте их результаты здесь, к вашему вопросу.
служба sudo sudo --status-all | grep -я апач
sudo systemctl --type service --all | grep -я апач
судо пс -эф | grep -я апач
судо пс-до | grep -я апач
ls -l /etc/apache2/сайты включены
grep -R "80" /etc/apache2
Редактировать
(после того, как InsertRandomString вставил новые данные в ответ на мой запрос)
У вас уже есть экземпляр Apache, работающий и прослушивающий вашу систему. Работающая служба Apache отображается в новых выходных данных, которые вы прикрепили. Нет необходимости устанавливать какой-либо новый веб-сервер (Apache, Nginx...). Не устанавливайте его, а используйте то, что уже есть.
Проверьте функциональность Apache в веб-браузере. Введите IP-адрес вашего сервера в поле адреса веб-браузера и нажмите Enter. Вы увидите страницу Apache по умолчанию, подтверждающую, что сервер в порядке. Например http://192.168.1.25
Ваш веб-сервер способен одновременно публиковать больше виртуальных сайтов в отдельных доменах. Каждый из них должен иметь свой файл в /etc/apache2/сайты доступны
каталог и в /etc/apache2/сайты включены
тоже. В /etc/sapache2/сайты включены
являются только символическими ссылками разрешенных сайтов.
Планируете ли вы использовать больше доменов и больше виртуальных сайтов на своем сервере?
- Если да, создайте новый файл для сайта Nextcloud в
/etc/apache2/сайты доступны
и связать его с /etc/apache2/сайты включены
. Вам нужен специальный домен для сайта Nextcloud, а также должна быть установлена запись DNS.
- Если нет, отредактируйте параметры сайта по умолчанию в
/etc/apache2/сайты-доступны/000-default.conf
файл и установите правильные значения, такие как имя каталога, содержащего все ваши PHP-файлы Nextcloud и т. д. Нет необходимости (но возможно) иметь специальный домен. IP-адреса достаточно для отображения вашего сайта Nextcloud.
Я полагаю, вы знаете, как настроить файлы конфигурации Apache для публикации сайта Nextcloud, например. /var/www/nextcloud
вместо страницы по умолчанию /var/www/html
.
Если вы собираетесь использовать свой Nextcloud с общедоступным IP-адресом, абсолютно необходимо настроить SSL, сертификаты и включить безопасный доступ HTTPS. В противном случае ваши имена пользователей и пароли Nextcloud могут быть перехвачены и скомпрометированы.
Моя личная заметка
Nextcloud не так прост, как кажется. Необходимо установить множество модулей PHP, подготовить базу данных MySQL и т. д. Но мне очень нравится этот сервис, это мой любимый инструмент для обмена данными и синхронизации на нескольких устройствах.