Назад | Перейти на главную страницу

Порт 80 закрыт, и apache не перезагружается

Я попытался перезапустить 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 директивы.