Если ваш сервер apache запущен и у вас есть доступ к оболочке:
сделать это:
genja ~ # ps aux |grep apache|tail -n1
root 23605 0.0 0.2 248636 10684 ? Ss Jun08 0:06 /usr/sbin/apache2 -D DEFAULT_VHOST -D INFO -D LANGUAGE -D MANUAL -D SSL -D SSL_DEFAULT_VHOST -D PHP5 -D PERL -D PROXY -D SCGI -d /usr/lib64/apache2 -f /etc/apache2/httpd.conf -k start
.. это процесс Apache Daemon. Вы ищете "-f /etc/apache2/http.conf".
Если вашему серверу apache не было сказано (с помощью сценариев дистрибутива init), где взять файл конфигурации, он будет выглядеть в расположении по умолчанию, которое может находиться в: / etc / apache2 / или / etc / httpd / (или где-то еще, правда, но эти два наиболее распространены). В этой папке вы найдете файл с именем apache2.conf или httpd.conf
, просто попробуйте это:
find /etc/ -iname httpd.conf -o -iname apache2.conf
После того, как вы нашли файл конфигурации для сервера apache, найдите строку, в которой они содержат конфигурации модулей. В моей системе это выглядит так:
Include /etc/apache2/modules.d/*.conf
Теперь вам нужно выяснить, где находится файл журнала:
genja modules.d # grep CustomLog /etc/apache2/modules.d/*
00_mod_log_config.conf:# a CustomLog directive (see below).
00_mod_log_config.conf:CustomLog /var/log/apache2/access_log common
00_mod_log_config.conf:#CustomLog /var/log/apache2/referer_log referer
00_mod_log_config.conf:#CustomLog /var/log/apache2/agent_logs agent
00_mod_log_config.conf:#CustomLog /var/log/apache2/access_log combined
Вы ищете: CustomLog / var / log / apache2 / access_log common.
Обратите внимание, что эта директива CustomLog может быть и в главном файле apache2.conf.
Теперь у вас есть местоположение файла журнала. Наиболее вероятная вещь, которая будет мешать вашему серверу регистрироваться сейчас, это права доступа к файлам. Убедитесь, что каталог, указанный в CustomLog, существует и что сервер apache может записать в него:
как root:
mkdir -p /var/log/apache2
touch /var/log/apache2/access_log
chown -R APACHEUSER /var/log/apache2
chmod 755 /var/log/apache2
chmod 644 /var/apache2/access_log
где APACHEUSER может быть apache или www или даже httpd. Вы можете понять это, запустив:
genja ~ # ps aux |grep apache |awk '{print $1}'
apache
(...)
apache
root
Таким образом, пользователь, использующий сервер apache в моей системе, на самом деле называется apache. Это не рут. Или, по крайней мере, не должно быть.
перезагрузите сервер после изменения разрешения этого файла. Я не знаю, как ваш дистрибутив это делает. Я думаю, что в Ubuntu есть команда service [s]. Но вы всегда можете запустить скрипт инициализации напрямую:
/ etc / init.d / apache restart (они могут находиться в другом месте вашего дистрибутива), просто перезагрузите весь компьютер, если вы не можете понять, как перезапустить сервер apache.
Если файл access_log пуст после перезапуска сервера, измените APACHEUSER на root в приведенной выше команде.
после всего этого просто используйте ваш любимый пейджер или текстовый редактор, чтобы посмотреть журнал. Или даже tail -f для мониторинга в реальном времени. Надеюсь, это поможет. глобигерина