The apache error log may have more information

Здравствуйте,помогите пожалуйста.Хотел установить demo ispmanager при установки выбило ошибку,далее не работал apache. Я его несколько раз пытался удалить,установить ну все равно выбивает ошибку: /etc/init.d/apache2 restart Помогите:)
  • Печать

Страницы: [1]   Вниз

Тема: Апач не стартует «Action ‘start’ failed. The Apache error log may have more inf»  (Прочитано 3999 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
taleb1

Здравствуйте,помогите пожалуйста.Хотел установить demo ispmanager при установки выбило ошибку,далее не работал apache.
Я его несколько раз пытался удалить,установить ну все равно выбивает ошибку:

 /etc/init.d/apache2 restart

[….] Restarting web server: apache2apache2: Could not reliably determine the server’s fully qualified domain name, using root  for ServerName
apache2: Could not reliably determine the server’s fully qualified domain name, using root for ServerName
(98)Address already in use: make_sock: could not bind to address [::]:80
(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
Action ‘start’ failed.
The Apache error log may have more information.

netstat -nta | grep :80

tcp        0      0 176.9.38.245:80         0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:8083            0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:8084          0.0.0.0:*               LISTEN
tcp        0      0 176.9.38.245:80         93.120.145.96:56494     ESTABLISHED
tcp        0      0 176.9.38.245:80         91.214.82.66:51044      ESTABLISHED
tcp        0      0 176.9.38.245:80         89.151.178.161:56913    TIME_WAIT
tcp        0      1 176.9.38.245:80         5.18.96.34:55551        LAST_ACK
tcp        0      0 176.9.38.245:80         89.204.73.144:55932     ESTABLISHED
tcp        0      1 176.9.38.245:80         194.58.175.116:60852    FIN_WAIT1
tcp        0      0 176.9.38.245:80         93.120.145.96:56495     ESTABLISHED
tcp        0      0 176.9.38.245:80         178.151.136.165:53033   ESTABLISHED
tcp        0      0 176.9.38.245:80         93.120.145.96:56477     ESTABLISHED
tcp        0      0 176.9.38.245:80         82.208.124.253:35454    TIME_WAIT
tcp        0      0 176.9.38.245:80         92.101.101.22:49235     ESTABLISHED
tcp        0      0 176.9.38.245:80         89.204.73.144:55931     ESTABLISHED
tcp        0      1 176.9.38.245:80         213.88.54.57:54122      FIN_WAIT1
tcp        0      1 176.9.38.245:80         5.18.96.34:55552        LAST_ACK
tcp        0      0 176.9.38.245:80         95.154.175.104:64385    ESTABLISHED
tcp        0      0 176.9.38.245:80         46.242.108.172:62164    TIME_WAIT
tcp        0      0 176.9.38.245:80         93.120.145.96:56493     ESTABLISHED

/etc/apache2/ports.conf

NameVirtualHost *:80
Listen 80

Помогите:)

« Последнее редактирование: 24 Апреля 2015, 00:42:56 от taleb1 »


Оффлайн
fisher74

The Apache error log may have more information.

Не?


Оффлайн
taleb1

Можете скинуть команды которые помогут решить эти проблемы?Я чайник в этом.
Походу 80 порт занят,как его освободить?
Заранее спасибо


Оффлайн
Protopopulus

Ошибка в ports.conf. Должно быть:

Listen 80
И опционально (следущими строкми):

<IfModule ssl_module>
        Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus


Оффлайн
taleb1

Содержимое файла ports.conf

NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # Server Name Indication for SSL named virtual hosts is currently not
    # supported by MSIE on Windows XP.
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>


Оффлайн
Protopopulus

NameVirtualHost *:80 — ошибка. Нужно удалить эту строку.

UPD: Вру безжалостно. Не ошибка.

Можно посмотреть что заняло 80-й порт:

sudo lsof -i :80

« Последнее редактирование: 23 Апреля 2015, 23:42:42 от Protopopulus »

Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus


Оффлайн
taleb1

sudo lsof -i :80

COMMAND  PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   2902     root   11u  IPv4  10549      0t0  TCP Debian-77-wheezy-64-LAMP:http (LISTEN)
nginx   2905 www-data   11u  IPv4  10549      0t0  TCP Debian-77-wheezy-64-LAMP:http (LISTEN)
nginx   2905 www-data   18u  IPv4  19902      0t0  TCP Debian-77-wheezy-64-LAMP:http->ppp92-100-79-155.pppoe.avangarddsl.ru:57727 (ESTABLISHED)
nginx   2905 www-data   19u  IPv4  19903      0t0  TCP Debian-77-wheezy-64-LAMP:http->ppp92-100-79-155.pppoe.avangarddsl.ru:57726 (ESTABLISHED)
nginx   2905 www-data   23u  IPv4  19961      0t0  TCP Debian-77-wheezy-64-LAMP:http->host94-210.lanoptic.ru:50003 (ESTABLISHED)
nginx   2905 www-data   25u  IPv4  19963      0t0  TCP Debian-77-wheezy-64-LAMP:http->host94-210.lanoptic.ru:50002 (ESTABLISHED)
nginx   2906 www-data   11u  IPv4  10549      0t0  TCP Debian-77-wheezy-64-LAMP:http (LISTEN)

Спасибо что помогаете решить эту проблему)))


Пользователь решил продолжить мысль [time]24 Апрель 2015, 01:58:18[/time]:


Эм у меня что 2 апача?Как убрать один из них?

/home/admin/conf/web/apache2.conf
/home/admin/conf/web/sapache2.conf
/etc/apache2/apache2.conf

find / -name apache2.conf

/home/admin/conf/web/apache2.conf
/root/vst_install_backups/1417116329/apache2/apache2.conf
/etc/apache2/apache2.conf
/usr/local/vesta/install/debian/apache2.conf
/usr/local/vesta/install/ubuntu/apache2.conf

« Последнее редактирование: 24 Апреля 2015, 01:13:42 от taleb1 »


Оффлайн
Protopopulus

Ну, вывод показывает, что запущен nginx, поэтому, собственно, apache и не стартует.

Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus


Оффлайн
taleb1

Сервер ранее настраивал прогер(сейчас контактов нет)
Можете скинуть решение чтобы работало,когда открываю сайт пишет
«500
Internal Server Error

Sorry, something went wrong :(«

Пожалуйста скиньте коды которые восстановят работу :))))


Оффлайн
Protopopulus

taleb1, что в логах?

tain -n 100 /var/log/apache2/error.log

Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus


Оффлайн
taleb1

tain -n 100 /var/log/apache2/error.log
-bash: tain: command not found


Оффлайн
Protopopulus

Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus


  • Печать

Страницы: [1]   Вверх

8 сентября, 2020 11:28 дп
4 046 views
| Комментариев нет

Centos, Debian, LAMP Stack, Ubuntu

Эта серия мануалов поможет вам предотвратить или устранить самые распространенные ошибки, которые возникают при работе с веб-сервером Apache.

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

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

Команды, которые необходимы для устранения неполадок Apache в большинстве дистрибутивов Linux:

  • systemctl – используется для управления сервисами Linux и взаимодействия с ними через менеджер сервисов systemd.
  • journalctl – используется для запроса и просмотра логов, созданных systemd.
  • apachectl – при устранении неполадок эта команда используется для проверки конфигурации Apache.

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

Примечание: В системах Debian и Ubuntu сервис и процесс Apache называется apache2, а в CentOS, Fedora и других системах RedHat – httpd. Имя сервиса и процесса – это единственное отличие команд запуска, остановки и проверки состояния Apache в разных системах. Логи journalctl также должны работать одинаково в любой системе Linux, которая использует systemd для управления Apache. При работе с этим мануалом вы должны использовать правильное имя сервиса в зависимости от вашего дистрибутива Linux.

Команды systemctl для Apache

Чтобы устранить распространенные ошибки Apache с помощью менеджера сервисов systemd, первым делом вам необходимо проверить состояние процессов Apache в вашей системе. Следующие команды systemctl помогут вам узнать больше о состоянии процессов Apache.

В Ubuntu и Debian используйте:

sudo systemctl status apache2.service -l --no-pager

Флаг -l отображает полный вывод без сокращения. Флаг –no-pager направляет вывод непосредственно на ваш терминал. Вы должны получить такой результат:

apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Mon 2020-07-13 14:43:35 UTC; 1 day 4h ago
Process: 929 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 1346 (apache2)
Tasks: 55 (limit: 4702)
CGroup: /system.slice/apache2.service
├─1346 /usr/sbin/apache2 -k start
. . .

Чтобы изучить процесс веб-сервера в CentOS и Fedora, используйте:

sudo systemctl status httpd.service -l --no-pager

Вы получите такой результат:

httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2020-07-14 19:46:52 UTC; 3s ago
Docs: man:httpd.service(8)
Main PID: 21217 (httpd)
Status: "Started, listening on: port 80"
Tasks: 213 (limit: 2881)
Memory: 16.6M
CGroup: /system.slice/httpd.service
├─21217 /usr/sbin/httpd -DFOREGROUND
. . .
Jul 14 19:46:52 localhost.localdomain httpd[21217]: Server configured, listening on: port 80

Независимо от дистрибутива вы должны обратить внимание на строку Active в выводе. Если ваш сервер Apache не отображается как active (running), хотя он должен работать, возможно, произошла ошибка и прервала его работу. Как правило, при возникновении ошибок в выводе будет строка failed:

Active: failed (Result: exit-code) since Tue 2020-07-14 20:01:29 UTC; 1s ago

Если проблема заключается в процессе или конфигурации Apache, вы можете устранить ее с помощью команды journalctl.

Команды journalctl для Apache

Чтобы проверить логи systemd для Apache, вы можете использовать команду journalctl. Логи systemd для Apache обычно содержат данные о проблемах с запуском или управлением процессом Apache.

Эти логи отделены от логов запросов и ошибок Apache. Команда journalctl отображает логи systemd, которые описывают сам сервис Apache (от его запуска до завершения работы, включая все ошибки процесса, которые могут возникнуть на этом пути).

В системах Ubuntu и Debian для проверки логов используйте следующую команду:

sudo journalctl -u apache2.service --since today --no-pager

Флаг –since today ограничивает вывод команды записями лога, начиная с 00:00:00 текущего дня. Использование этой опции поможет ограничить объем записей лога, которые вам необходимо изучить для выявления ошибок. Вы должны получить следующий результат:

Jul 14 20:12:14 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...
Jul 14 20:12:14 ubuntu2004 systemd[1]: Started The Apache HTTP Server.

Если вы используете систему на базе CentOS или Fedora, введите эту версию команды:

sudo journalctl -u httpd.service --since today --no-pager

Вы получите такой результат:

Jul 14 20:13:09 centos8 systemd[1]: Starting The Apache HTTP Server...
. . .
Jul 14 20:13:10 centos8 httpd[21591]: Server configured, listening on: port 80

В случае ошибки в выводе будет строка, приведенная ниже (имя хоста будет отличаться в зависимости от дистрибутива Linux):

Jul 14 20:13:37 yourhostname systemd[1]: Failed to start The Apache HTTP Server.

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

Устранение неполадок с помощью apachectl

Большинство дистрибутивов Linux включают утилиту apachectl в установку Apache по умолчанию. apachectl – бесценный инструмент, помогающий обнаруживать и диагностировать проблемы конфигурации Apache.

Проверьте конфигурацию Apache с помощью команды apachectl configtest. Инструмент проанализирует ваши файлы Apache и обнаружит все ошибки или недостающие настройки перед попыткой запуска сервера.

Команда одинакова для дистрибутивов Ubuntu, Debian, CentOS и Fedora:

sudo apachectl configtest

Если конфигурация Apache не содержит ошибок, вы получите такой результат:

Syntax OK

В зависимости от вашего дистрибутива Linux в выводе могут быть и другие строки, но самая важная строка – это та, в которой говорится, что с синтаксисом все ок.

Если в вашей конфигурации Apache есть ошибка (например, директива ссылается на деактивированный модуль) или опечатка, apachectl обнаружит ее и попытается уведомить вас о проблеме.

Например, попытка использовать в директиве отключенный модуль Apache приведет к появлению следующих сообщений apachectl:

AH00526: Syntax error on line 232 of /etc/apache2/apache2.conf:
Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.
The Apache error log may have more information.

В этом примере модуль ssl не включен, поэтому при проверке конфигурации директива SSLEngine выдает ошибку. Последняя строка также указывает, что в логе ошибок Apache может содержаться дополнительная информация, и это следующее место для поиска подробной отладочной информации.

Логи Apache

Логи Apache – очень полезный ресурс для устранения неполадок. Как правило, каждая ошибка, возникающая в браузере или другом HTTP-клиенте, создает соответствующую запись в логах Apache. Иногда Apache также выводит в свои логи ошибки, связанные с конфигурацией, встроенными модулями и другой отладочной информацией.

Чтобы проверить ошибки при устранении неполадок Apache на сервере Fedora, CentOS или RedHat, изучите файл /var/log/httpd/error_log.

Если вы устраняете неполадки в системе Debian или Ubuntu, проверьте /var/log/apache2/error.log с помощью инструмента tail или less. Например, чтобы просмотреть последние две строки лога ошибок с помощью tail, выполните следующую команду:

sudo tail -n 2 /var/log/apache2/error.log

Замените количество строк, которые вы хотите изучить. Укажите количество строк вместо числа 2 в команде.

В системе CentOS или Fedora файл журнала для проверки – /var/log/httpd/error_log.

Ниже мы приводим пример пример ошибки (ее текст не зависит от дистрибутива Linux):

[Wed Jul 15 01:34:12.093005 2020] [proxy:error] [pid 13949:tid 140150453516032] (13)Permission denied: AH00957: HTTP: attempt to connect to 127.0.0.1:9090 (127.0.0.1) failed
[Wed Jul 15 01:34:12.093078 2020] [proxy_http:error] [pid 13949:tid 140150453516032] [client 127.0.0.1:42480] AH01114: HTTP: failed to make connection to backend: 127.0.0.1

Эти две строки представляют собой отдельные сообщения об ошибках. Обе они ссылаются на модуль, вызвавший ошибку (proxy в первой строке, proxy_http во второй), и содержат код ошибки, индивидуальный для модуля. Первый, AH00957, указывает на то, что сервер Apache пытался подключиться к бэкенд-серверу (в данном случае к 127.0.0.1 по порту 9090) с помощью модуля proxy, но не смог этого сделать.

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

Эти строки мы привели просто для примера. Если вы диагностируете ошибки на своем сервере Apache, скорее всего, вы найдете совсем другие строки с ошибками в ваших логах. Независимо от дистрибутива Linux, строки ошибок в логах всегда содержат соответствующий модуль Apache и код ошибки, а также текстовое описание ошибки.

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

Заключение

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

Однако чаще всего полезно следовать общей схеме устранения неполадок и использовать эти инструменты в описанном порядке. Начните с systemctl, чтобы проверить состояние сервера Apache. Если вам нужна дополнительная информация, изучите логи systemd для Apache с помощью команды journalctl. Если после проверки journalctl проблема все еще не ясна, проверьте конфигурации Apache с помощью команды apachectl configtest. Для более глубокого изучения неполадок проверьте логи Apache, обычно они указывают на конкретную ошибку (предоставляя полезные для диагностики данные и коды ошибок).

Tags: Apache, apachectl, journalctl, systemctl

a1exDi

Posts: 11
Joined: Sat Jul 18, 2015 12:59 pm

Os: Ubuntu 13x
Web: apache + nginx
The apache2 configtest failed

Привет. Случайно удалил все файлы из папки var/log. При попытке перезапустить apache получаю следующую ошибку:

Code: Select all

root@ValeeraSanguinar:~# service apache2 restart
 * Restarting web server apache2
   ...fail!
 * The apache2 configtest failed.
Output of config test was:
(2)No such file or directory: AH02291: Cannot access directory '/var/log/apache2/domains/' for error log of vhost defined at /home/admin/conf/web/apache2.conf:35
(2)No such file or directory: AH02291: Cannot access directory '/var/log/apache2/domains/' for error log of vhost defined at /home/admin/conf/web/apache2.conf:1
AH00014: Configuration check failed
Action 'configtest' failed.
The Apache error log may have more information.

Читать умею :)

Не понимаю, какой файл ему нужен? Можно ли сделать какой-то ребилд, чтобы все файлы логов создались?


yariksat

Posts: 551
Joined: Sat Nov 19, 2016 5:39 pm

Os: CentOS 4x
Web: apache
Re: The apache2 configtest failed

Post

by yariksat » Tue Jan 16, 2018 2:35 pm

a1exDi wrote:Привет. Случайно удалил все файлы из папки var/log. При попытке перезапустить apache получаю следующую ошибку:

Code: Select all

root@ValeeraSanguinar:~# service apache2 restart
 * Restarting web server apache2
   ...fail!
 * The apache2 configtest failed.
Output of config test was:
(2)No such file or directory: AH02291: Cannot access directory '/var/log/apache2/domains/' for error log of vhost defined at /home/admin/conf/web/apache2.conf:35
(2)No such file or directory: AH02291: Cannot access directory '/var/log/apache2/domains/' for error log of vhost defined at /home/admin/conf/web/apache2.conf:1
AH00014: Configuration check failed
Action 'configtest' failed.
The Apache error log may have more information.

Читать умею :)

Не понимаю, какой файл ему нужен? Можно ли сделать какой-то ребилд, чтобы все файлы логов создались?

Вот тут /home/admin/conf/web/apache2.conf:35
и тут /home/admin/conf/web/apache2.conf:1
Что на этих линиях 1 и 35?
Такой путь не пробывали создать как /var/log/apache2/domains/ ?
Я как-то тоже удалял,потом создаем папку apache2 в ней уже папку domains и только потом рестартим апач.Все нужные файлы там создадутся при рестарте.


imperio

VestaCP Team
Posts: 6987
Joined: Sat Dec 01, 2012 12:37 pm
Contact:

Re: The apache2 configtest failed

Post

by imperio » Wed Jan 17, 2018 3:14 pm

Здравствуйте. Как вы умудрились то? )
Попробуйте выполнить команды

Code: Select all

mkdir -p /var/log/nginx/domains
touch /var/log/apache2/access.log /var/log/apache2/error.log
mkdir -p /var/log/apache2/domains
chmod a+x /var/log/apache2
chmod 640 /var/log/apache2/access.log /var/log/apache2/error.log
chmod 751 /var/log/apache2/domains


Mr.Erbutw

Posts: 1040
Joined: Tue Apr 29, 2014 10:05 pm

Os: CentOS 6x
Web: apache + nginx
Re: The apache2 configtest failed

Post

by Mr.Erbutw » Wed Jan 17, 2018 3:51 pm

imperio wrote:Здравствуйте. Как вы умудрились то? )

Наверное через это все проходят XD
Так называемая чистка логов …


imperio

VestaCP Team
Posts: 6987
Joined: Sat Dec 01, 2012 12:37 pm
Contact:

Re: The apache2 configtest failed

Post

by imperio » Wed Jan 17, 2018 3:53 pm

Mr.Erbutw wrote:

imperio wrote:Здравствуйте. Как вы умудрились то? )

Наверное через это все проходят XD
Так называемая чистка логов …

Скорее всего да)


yariksat

Posts: 551
Joined: Sat Nov 19, 2016 5:39 pm

Os: CentOS 4x
Web: apache
Re: The apache2 configtest failed

Post

by yariksat » Wed Jan 17, 2018 5:06 pm

Mr.Erbutw wrote:

imperio wrote:Здравствуйте. Как вы умудрились то? )

Наверное через это все проходят XD
Так называемая чистка логов …

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


Mr.Erbutw

Posts: 1040
Joined: Tue Apr 29, 2014 10:05 pm

Os: CentOS 6x
Web: apache + nginx
Re: The apache2 configtest failed

Post

by Mr.Erbutw » Thu Jan 18, 2018 8:06 am

yariksat wrote:
Ну так лучше же ротацию логов настроить и не париться.
Я специально удалял,изучал кой чего.Потом восстановил все как было.

Это да.
Умудряются удалить логи, но безболезненно не происходит.



Понравилась статья? Поделить с друзьями:

Читайте также:

  • Teso error 210 что делать
  • The android sdk location is inside studio install location как исправить
  • Teso error 200
  • The amazing spider man ошибка buddha
  • Testgenerator write file error

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии