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

Лучший способ решить проблему с запуском Apache?

Недавно мы получили резервный сервер для зеркалирования всех наших данных на случай, если основной сервер выйдет из строя.

Я обновил данные всех сайтов через rsync, и обновил все конфигурации и базы данных apache. Обе машины работают на Ubuntu 9 (9.04 на основной, 9.10 на резервной).

Итак, на данный момент все кажется синхронизированным по большей части (еще нужно выяснить синхронизацию пользователей), и я пытаюсь запустить Apache. я получил

* Starting web server apache2                                       [fail]

Больше ничего не указывает, в чем может быть проблема.

Я знаю, что у меня недостаточно информации, чтобы ожидать решения от вас, ребята, поэтому я просто хотел бы знать, куда я могу пойти дальше для дальнейшего изучения этой проблемы. Будут ли для этого журналы ошибок?

Спасибо!

httpd -t проверит синтаксис ваших файлов конфигурации и выведет на терминал любые ошибки.

В некоторых конкретных случаях запись журнала не будет записана на диск - это может произойти, если журналы не существуют, например, или Apache просто не может записывать в файлы журнала из-за проблем с разрешениями и т. Д. В таких случаях лучший способ диагностировать ошибку - использовать strace:

[root@server ~]# strace -Ff apachectl start

Хотя вывод будет довольно подробным, если Apache не запустится по какой-либо причине, вы увидите write () в конце с содержимым того, что бы быть занесенным в журналы с указанием причины сбоя (если не записывается, почему в журнале ошибок, не удивляйтесь, если сообщение об ошибке содержит «Невозможно открыть журнал» с путем к журналу;).

Хотя, глядя на ваш комментарий относительно mod_fcgid, я бы посоветовал просмотреть конфигурацию Apache и изучить ссылки на mod_fcgid - похоже, что он пытается открыть буквальный файл «mod_fcgid», а не загружать модуль.

Любые ошибки следует выводить в журналы ошибок (часто в / var / log / http / error_logs. Grep для ErrorLog в вашем httpd.conf, чтобы узнать, где.

Я рекомендую использовать два окна. Выполните «tail -f error_log» в одном окне и используйте другое окно для выполнения команды «apachectl restart». Обнаружив ошибку, обновите свой ответ здесь сообщением об ошибке.

У меня была аналогичная проблема с отладкой сервера apache в Mac OS, поэтому я решил поделиться своим опытом и сэкономить время другим, я нашел следующее очень полезным:

  1. найти журналы:

apachectl -S | grep log

  1. в выводе вы найдете несколько файлов журналов, которые вы можете начать искать в примере ошибок:

tail -n 15 /var/log/apache2/ssl_engine.log

Если существует более 1 файла журнала, продолжайте отслеживать их, пока не обнаружите ошибку, из-за которой apache не запускается.

Если ваш Apache не работает, проверьте свой порт Skype, в большинстве случаев и Skype, и Apache используют порт 80, и это означает, что именно Skype может быть причиной того, что apache не запускается. остановить скайп, если он установлен.