В этой статье мы рассмотрим как найти и просматривать лог файлы сервера apache2, настроить вывод полезной информации в лог файл, как обнулить лог файл и остановить логирование.
Адрес по которому пишется лог файл вашего сайта можно посмотреть в файле конфигурации вашего виртуального хоста. Файлы конфигурации находятся в папке в файле /etc/apache2/sites-available/. Мы определили, что наши лог файлы находятся в папке /var/log/apache2.
Просматривать лог файлы можно любым текстовым редактором. Изменения лог файла в реальном времени удобно наблюдать с помощью команды tail
tail -f --lines=1 access.log
В файле /etc/apache2/apache2.conf вы можете настроить формат лог файлов. Форматы для комбинированных (combined) лог файлов лучше всего посмотреть в первоисточнике на сайте Apache.
Ротация лог файлов в Linux системах, как правило, происходит автоматически в Ubuntu, например, при помощи утилиты logrotate. Вам может быть захочется обнулить (очистить) лог файл или остановить логирование.
Чтобы обнулить лог файл, сначала останавливаем сервер Apache2
systemctl stop apache2
Обнуляем лог файлы
echo -ne > access.log echo -ne > error.log
Запускаем сервер Apache2
systemctl start apache2
Если вы хотите запретить логирование работы сервера Apache2 для некоторых сайтов, в соответствующих файлах конфигурации, которые находятся в папке /etc/apache2/sites-available/ закомментируйте соответствующие строки. После этого перезагрузите сервер Apache2
ErrorLog ${APACHE_LOG_DIR}/error.log # CustomLog ${APACHE_LOG_DIR}/access.log combined
systemctl restart apache2
Теперь запустите команду tail, как показано выше, пройдите по нескольким страницам вашего сайта и убедитесь, что лог не пишется.
У меня пишется ещё один лог файл other_vhosts_access.log. Чтобы запретить запись в этот файл, я отредактировал файл конфигурации Apache2 /etc/apache2/conf-available/other-vhosts-access-log.conf
# CustomLog ${APACHE_LOG_DIR}/other_vhosts_access.log vhost_combined