Я не могу запустить apache2, установленный с помощью apt-get. Я получаю ту же ошибку на двух отдельных установках Ubuntu 12.10, одна на моем настольном ПК, другая работает в VirtualBox:
michal@michaltest:~$ sudo service apache2 start
* Starting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
[fail]
Исоф говорит:
michal@michaltest:/var/log/apache2$ sudo lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ubuntu-ge 2074 michal 11u IPv4 23978 0t0 TCP michaltest.local:47578->mulberry.canonical.com:http (CLOSE_WAIT)
firefox 25194 michal 71u IPv4 42477 0t0 TCP michaltest.local:59793->69.59.197.29:http (ESTABLISHED)
firefox 25194 michal 76u IPv4 41834 0t0 TCP michaltest.local:59698->69.59.197.29:http (ESTABLISHED)
gvfsd-htt 25320 michal 12u IPv4 42568 0t0 TCP michaltest.local:56203->lb260.amst.cotendo.net:http (CLOSE_WAIT)
netstat говорит:
michal@michaltest:/var/log/apache2$ sudo netstat -lnp | grep '80'
unix 2 [ ACC ] STREAM LISTENING 8030 876/acpid /var/run/acpid.socket
/var/log/apache2/error.log:
[Thu Nov 08 11:13:30 2012] [notice] Apache/2.2.22 (Ubuntu) configured -- resuming normal operations
[Thu Nov 08 11:17:32 2012] [notice] caught SIGTERM, shutting down
/etc/apache2/ports.conf:
NameVirtualHost *:80
Listen 80
<IfModule mod_ssl.c>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
Спасибо за вашу помощь.
РЕДАКТИРОВАНИЕ № 1:
michal@michaltest:~$ sudo netstat -ano | grep '443'
tcp 54 0 10.0.2.15:58504 91.189.92.70:443 CLOSE_WAIT off (0.00/0/0)
Чтобы устранить ошибку «apache2: не удалось надежно определить полное доменное имя сервера, используя 127.0.1.1 for ServerName» , пожалуйста, укажите следующее в файле apache2.conf
Сохраните файл настроек и перезапустите сервер Apache.
Просьба опубликовать вывод
sudo netstat -ano | grep '443'
Также убедитесь, что если вы настраиваете Apache для прослушивания порта 443 / ssl, вы должны настроить ssl сертификат на веб-сервере apache.
источник
sudo netstat -ano | grep '443'
. ServerName не является проблемой. Большое спасибо.Вы видели:
Я думаю, что вы можете проверить права доступа к / var / log / apache2!
источник
/var/log/apache2
каталог рекурсивно доступным для записи во всем мире, затем попытался запустить егоsudo service apache2 start
снова, и результат все еще былUnable to open logs
там. Какие-либо предложения? Спасибо.Похоже, что позади может быть запущен сервис nginx. Так что остановите nginx "service nginx stop" и теперь попробуйте запустить службу apache2, она должна появиться без проблем. (остановите, если запущены какие-либо другие сервисы приложения)
У меня была та же проблема сегодня, и она была решена.
источник
Похоже, проблема в том, что другой процесс имеет открытый порт 443. Вам нужно будет сначала убить этот процесс.
linux - как мне удалить соединение через сокет CLOSE_WAIT - переполнение стека говорит:
источник