Актуальная информация

о хостинге в России

блог / термины / каталог / рейтинг

Логи хостинга access.log error.log и slow query log

Логи хостинга access.log error.log и slow query log

Логи хостинга — это журналы событий, по которым можно понять, что происходило с сайтом в конкретный момент времени. Access.log показывает обращения к сайту, error.log помогает искать ошибки веб-сервера и приложения, а slow query log показывает медленные запросы к базе данных. Если сайт выдаёт ошибку 500, страницы открываются слишком долго или в статистике видна подозрительная активность, начинать проверку часто нужно именно с этих файлов.

Что такое логи хостинга

Лог — это запись о событии на сервере. Когда посетитель открывает страницу, бот запрашивает файл, PHP-скрипт падает с ошибкой или база данных слишком долго выполняет запрос, сервер может сохранить об этом строку в журнале.

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

На обычном виртуальном хостинге логи чаще доступны в панели управления или отдельной папке проекта. На VPS и выделенном сервере их обычно ищут в системных каталогах веб-сервера, PHP-FPM и базы данных. Точное расположение зависит от панели, операционной системы и настроек хостинга.

Access.log — что показывает журнал обращений

Access.log — это журнал запросов к сайту. В него попадают обращения к страницам, изображениям, CSS, JavaScript, API-адресам и другим ресурсам, которые обрабатывает веб-сервер.

Обычно в строке access.log можно увидеть IP-адрес клиента, дату и время запроса, метод HTTP, запрошенный URL, код ответа HTTP, размер ответа, источник перехода и user-agent браузера или бота. На некоторых серверах дополнительно записывается время обработки запроса, имя виртуального хоста, протокол, upstream-сервер и другие параметры.

Access.log полезен, когда нужно понять, что именно происходило перед ошибкой. Например, если пользователь жалуется на ошибку 500 на странице оформления заказа, в журнале можно найти запрос к этой странице в нужное время и увидеть, был ли ответ 500, 502, 503, 504 или другой код. Сам access.log обычно не объясняет причину ошибки, но показывает место, время и масштаб проблемы.

Этот журнал также помогает находить подозрительную активность. Частые запросы к wp-login.php, xmlrpc.php, административным адресам, несуществующим файлам, старым уязвимым скриптам или большим спискам URL могут указывать на сканирование сайта ботами. Повторяющиеся 404 говорят о битых ссылках или ошибках в путях. Массовые 403 могут быть связаны с блокировками, правилами безопасности или запретами доступа.

Error.log — где искать причины ошибок 500

Error.log — это журнал ошибок веб-сервера и связанных с ним компонентов. Если access.log отвечает на вопрос «что запросили и какой код получили», то error.log помогает понять, почему запрос завершился ошибкой.

При ошибке 500 в error.log могут быть записи о сбое PHP-скрипта, проблемах с правами на файл, неверной директиве в .htaccess, недоступности FastCGI-процесса, превышении лимита памяти, ошибке синтаксиса, тайм-ауте или другом внутреннем сбое. Формулировки зависят от связки сервера: Apache, NGINX, PHP-FPM, CMS, фреймворка и панели управления.

Главное правило работы с error.log — смотреть записи с точным временем ошибки. Один и тот же сайт может годами хранить старые предупреждения, которые не имеют отношения к текущей проблеме. Поэтому лучше сначала воспроизвести ошибку, запомнить время и адрес страницы, затем открыть error.log за этот же период.

Для владельца сайта error.log особенно полезен при обновлении CMS, установке плагинов, переносе сайта, смене версии PHP или изменении настроек .htaccess. Если после таких действий сайт показывает белый экран, 500 Internal Server Error или перестаёт открываться админка, свежие строки журнала часто дают самый короткий путь к причине.

Slow query log — что показывает журнал медленных запросов

Slow query log — это журнал медленных SQL-запросов к базе данных. Его используют, когда сайт открывается без явной ошибки, но отдельные страницы загружаются слишком долго, сильно нагружают сервер или периодически вызывают тайм-ауты.

В slow query log попадают запросы, выполнение которых заняло больше заданного порога. Для MySQL и совместимых СУБД этот порог настраивается отдельно. В журнале можно увидеть сам SQL-запрос, время выполнения, количество просмотренных строк и другие параметры, которые помогают понять, почему база данных стала узким местом.

Чаще всего медленные запросы появляются из-за отсутствующих индексов, тяжёлых фильтров, сложных сортировок, больших таблиц, неудачной логики плагина, перегруженного поиска по сайту или слишком частых обращений к одним и тем же данным. На интернет-магазинах slow query log часто помогает найти проблемные страницы каталога, фильтрации, корзины или личного кабинета.

Slow query log не нужно путать с error.log. Ошибок может не быть вообще: запрос корректный, база его выполняет, но делает это слишком долго. Именно поэтому при медленной загрузке страниц важно проверять не только PHP и веб-сервер, но и базу данных.

Как понять какой лог смотреть первым

Выбор журнала зависит от симптома. При ошибке 500 сначала стоит сопоставить access.log и error.log: первый покажет проблемный запрос, второй — возможную причину. При медленных страницах полезны access.log с временем обработки, error.log с тайм-аутами и slow query log. При подозрительных запросах обычно начинают с access.log, а затем смотрят, привели ли эти обращения к ошибкам или повышенной нагрузке.

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

Удобный порядок проверки выглядит так:

Такой подход помогает не гадать, а идти от наблюдаемого события к конкретной причине.

Что можно понять по кодам ответа в логах

Код ответа в access.log — один из самых быстрых ориентиров при диагностике. Код 200 означает, что запрос обработан успешно. 301 и 302 указывают на перенаправление. 403 связан с запретом доступа, 404 — с отсутствующим ресурсом, 429 может появляться при ограничении частоты запросов, а 500, 502, 503 и 504 относятся к серверным ошибкам.

Важно смотреть не только на один код, но и на повторяемость. Один 404 от случайного бота обычно не опасен. Сотни запросов к несуществующим адресам за короткое время могут говорить о сканировании. Единичная ошибка 500 после обновления плагина — повод проверить свежую запись в error.log. Постоянные 504 на тяжёлой странице могут указывать на долгую обработку запроса, проблемы с PHP-FPM, внешним API или базой данных.

Для сайта на CMS полезно связывать коды ответа с конкретными действиями: вход в админку, оформление заказа, отправка формы, поиск, фильтрация товаров, загрузка файла. Так проще понять, какая часть сайта вызывает сбой.

Почему логи помогают при подозрительной активности

Access.log показывает не только обычных посетителей, но и ботов, сканеры, парсеры, попытки перебора паролей и автоматические запросы к типовым уязвимым адресам. По журналу можно увидеть частые обращения с одного IP, странные user-agent, запросы к файлам резервных копий, административным страницам, XML-RPC, старым скриптам или адресам, которых нет на сайте.

Но сам факт странного запроса ещё не означает взлом. Открытые сайты постоянно получают автоматические обращения. Важно оценивать последствия: появились ли успешные ответы там, где должен быть запрет, есть ли ошибки в error.log, изменилась ли нагрузка, были ли подозрительные входы в админку, создавались ли неизвестные файлы.

Практический вывод

Access.log, error.log и slow query log отвечают на разные вопросы. Access.log показывает, кто и что запрашивал. Error.log объясняет многие серверные ошибки. Slow query log помогает найти медленные SQL-запросы, из-за которых сайт тормозит без явного сбоя. Если фиксировать точное время проблемы и проверять журналы вместе, диагностика ошибок 500, медленных страниц и подозрительной активности становится намного точнее.

Рейтинг хостингов России 2026
Рейтинг лучших хостингов России на 2026 год
Российский хостинг: выбираем лучшего провайдера для своего проекта
Российский хостинг: выбираем лучшего провайдера для своего проекта
Как узнать на каком хостинге размещается сайт
Как узнать на каком хостинге размещается сайт
История российского хостинга: от первых серверов до облачных технологий
История российского хостинга: от первых серверов до облачных технологий