Я попытался перезапустить Apache 2.2.14 (также используя PHP 5.3.2 в Ubuntu 10.04, выполняя все команды как root). Он выключился, но не запустился. Это совершенно новый VPS без межсетевого экрана и IP-таблицы. Когда я бегу apache2ctl 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
apache2ctl status
производит это:
Looking up localhost
Making HTTP connection to localhost
Alert!: Unable to connect to remote host.
lynx: Can't access startfile http://localhost/server-status
'www-browser -dump http://localhost:80/server-status' failed.
Maybe you need to install a package providing www-browser or you
need to adjust the APACHE_LYNX variable in /etc/apache2/envvars
lsof | grep http
ничего не возвращает
netstat -plant
:
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1139/mysqld
tcp 0 0 209.40.198.146:53 0.0.0.0:* LISTEN 1153/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 1153/named
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1125/sshd
tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 1153/named
tcp 0 240 209.40.198.146:22 66.214.136.198:37853 ESTABLISHED 1280/0
tcp6 0 0 :::53 :::* LISTEN 1153/named
tcp6 0 0 :::22 :::* LISTEN 1125/sshd
tcp6 0 0 ::1:953 :::* LISTEN 1153/named
Я в лучшем случае новичок в Linux, но все, что я видел, требовало этих отчетов. Ничто не блокирует порт 80, но Apache не будет к нему подключаться. Это проблема с апачем? У меня настроены виртуальные хосты, но они довольно просты, и я использовал ту же конфигурацию раньше. При необходимости я могу разместить файлы .conf.
apache2ctl -t
: Синтаксис ОК
service apache2 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
Предполагая, что вы используете apache с правами root (service apache start
лучше, чем руководство apachectl
), поскольку пользователи не могут привязать привилегированные порты, убедитесь, что у вас нет синтаксических ошибок:
apachechtl -t
Тогда проверьте свой NameServer
конфигурация директивы и механизм разрешения.
Убедитесь, что ваш NameServer myhost.example.com
относится к адресу, который может быть разрешен (проверьте / etc / hosts или ваш DNS-кеш).
Это произойдет, если вы укажете Listen 80
(или какой-либо другой порт) более одного раза в вашей конфигурации. Каждый раз, когда он появляется, Apache будет пытаться привязать указанный порт. При втором появлении Apache не сможет связать порт, потому что буквально адрес уже используется. Внимательно проверьте конфигурацию и удалите дубликаты. Listen
директивы.