На вашем хостинге хранится файл, который большинство никогда не открывало. Это логи сервера — обычный текстовый документ, где записаны все обращения к вашему сайту. Не волнуйтесь, что вы что-нибудь сломаете. Это просто чтение информации. Ничего опасного в анализе логов нет.
Что такое логи сервера и какие данные в них лежат
Логи сервера — это история всех запросов к веб-серверу вашего сайта. Каждое обращение к сайту, когда поисковый робот (Googlebot, Yandexbot или другой бот) заходит к вам, веб-сервер записывает в логи сервера.
В одну строку логов попадает целый набор параметров для анализа обхода. IP-адрес (с какого компьютера пришел запрос). Дата и время запроса (точное время обхода страницы). URL, который запросил робот. Код ответа (успешно ли загрузилась страница сайта). User-Agent (идентификатор программы, которая сделала запрос). Размер ответа в байтах. Время ответа сервера в миллисекундах.
Все эти данные из логов показывают реальную частоту обхода сайта, какие страницы чаще всего обходит бот, какие URL получают ошибки. Анализ логов дает точную картину того, как поисковые боты взаимодействуют с контентом вашего сайта. Это позволяет видеть правду лучше любых предположений.
Где находятся логи сервера: для новичков
Если пользуетесь хостингом с удобной панелью управления (Timeweb, DomProm, Beget, REG.RU), логи доступны в несколько кликов:
- Войдите в кабинет хостинга
- Найдите раздел «Логи» или «Log файлы»
- Нажмите на «Логи доступа» (Access logs)
- Скачайте файл access.log
После загрузки откройте этот лог-файл в текстовом редакторе. Подойдет Notepad++, VS Code или стандартный блокнот. Файлы логов содержат только текстовые данные. Вы просмотрите информацию — и всё. Анализ логов абсолютно безопасен для работы сайта.
Где лежат логи: инструкция для вебмастеров
Если есть SSH доступ к серверу, логи находятся в стандартных папках веб-сервера:
Для nginx:
/var/log/nginx/access.log
Для Apache:
/var/log/apache2/access.log
Подключитесь по SSH:
ssh USER@HOST — подставьте имя пользователя и адрес сервера.
Посмотрите последние строки из логов:
tail -f /var/log/nginx/access.log
Команда покажет живой поток данных из логов в реальном времени.
Если log файлы слишком большие (на крупных сайтах файлы логов растут мегабайтами в день), используйте фильтры:
grep 'Googlebot' /var/log/nginx/access.log | head -20
Для Yandexbot:
grep -i 'Yandexbot' /var/log/nginx/access.log
Чтобы посчитать, как часто обходили конкретную страницу:
grep '/products/' /var/log/nginx/access.log | wc -l
Результат покажет количество запросов к этому URL.
Разбор одной строки логов в деталях
Каждая строка — это один запрос к веб-серверу для анализа обхода. Вот реальный пример из логов:
142.251.41.20 - - [20/Sep/2024:09:15:42 +0300] "GET /blog/seo-tips HTTP/1.1" 200 15780 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
Разберем каждое поле:
IP-адрес (142.251.41.20) — откуда пришел запрос. Это адрес робота. Если из официального диапазона Google, то это реальный Googlebot. Проверить диапазон можно в Search Console.
Дата и время [20/Sep/2024:09:15:42 +0300] — точный момент запроса. Здесь видна реальная частота обхода сайта. Если одна страница обходится раз в день, а другая раз в неделю — робот тратит краулинговый бюджет по-разному.
Метод и путь («GET /blog/seo-tips HTTP/1.1») — что запросил поисковый робот. GET значит скачивание. /blog/seo-tips — это URL для анализа обхода.
Код ответа сервера (200) — самое важное значение для работы с логами. Основные коды ответа:
- 200 = страница загружена успешно
- 301 = постоянный редирект на новый адрес
- 404 = страница не найдена
- 500, 5xx = ошибка веб-сервера
Если в логах много кодов 5xx от Googlebot, это объясняет, почему упала частота обхода сайта — поисковые роботы не могут загружать страницы и снижают количество посещений.
Размер ответа (15780) — количество байтов, отправленных сервером. Помогает выявить проблемы с размерами файлов при анализе обхода.
User-Agent — идентификатор программы робота. В логах User-Agent содержит название робота и версию:
«Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)»
Для Yandexbot в логах это выглядит так:
«Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)»
User-Agent — это главный инструмент для идентификации поисковых роботов в логах. Здесь видны название робота и номер версии.
Примеры реальных строк из access.log
Успешный обход от Googlebot (код 200):
66.249.64.107 - - [22/Sep/2024:14:23:15 +0300] "GET /products/laptop HTTP/1.1" 200 8567 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
IP 66.249.64.107 из официального диапазона Google. Googlebot запросил /products/laptop и получил код ответа 200. Бот успешно прочитал контент этой страницы.
Обход с редиректом (код 301):
157.55.39.156 - - [22/Sep/2024:14:24:33 +0300] "GET /old-article HTTP/1.1" 301 0 "-" "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)"
Код 301 означает постоянное перенаправление. Yandexbot попросил /old-article, а веб-сервер его перенаправил на новый адрес. Робот обработал редирект. Такие цепочки редиректов замедляют обход сайта, если их слишком много.
Ошибка 404 в логах:
40.77.167.0 - - [22/Sep/2024:14:25:50 +0300] "GET /missing-page HTTP/1.1" 404 1234 "-" "Mozilla/5.0 (compatible; Bingbot/2.0; +http://www.bing.com/bingbot.htm)"
Робот пришел на несуществующий URL. Код ответа 404. Это означает ошибку: либо на странице неправильные ссылки, либо источник указал роботу на удаленную страницу сайта.
Медленный ответ веб-сервера:
203.0.113.45 - - [22/Sep/2024:14:26:12 +0300] "GET /category HTTP/1.1" 200 5432 "5000" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
Значение «5000» перед User-Agent — это время ответа в миллисекундах. Пять секунд очень медленно. Если в логах часто такие большие значения времени ответа, веб-сервер может быть перегружен нагрузкой.
Как распознать поддельные User-Agent'ы в логах
Не каждый, кто выдает себя за Googlebot в логах, на самом деле Google. Поддельные боты маскируются под поисковиков. Как это выявить при анализе логов?
Всегда проверяйте IP-адрес вместе с User-Agent'ом. Google и Яндекс опубликовали официальные списки IP-адресов, с которых действительно ходят их поисковые роботы. Если в логах строка с User-Agent «Googlebot», но IP не из официального списка — это фейк.
Вот как это проверить:
- Выпишите IP-адрес из логов сервера.
- Проверьте IP в официальном списке диапазонов Google.
- Проверьте имя хоста обратным DNS-запросом и подтвердите его прямым запросом.
- Если совпадает — реальный робот. Если нет — поддельный User-Agent.
Часто в логах встречаются поддельные боты-парсеры и скреп-программы, которые маскируются под Googlebot. Они занимают объем логов, потребляют ресурсы сервера из-за частого обхода несуществующих страниц сайта, создают ошибки 404. Таких ботов лучше ограничивать на уровне сервера: они могут не соблюдать robots.txt.
Официальные поисковики всегда используют правильные IP-адреса. Если видите подозрение на фейк, внесите его в черный список и проверьте, нет ли повторных попыток обхода от этого бота.
Психологический момент: открытие логов безопасно
Может быть, мнится, что разбор логов — это сложно и опасно. Может быть, вы боитесь сломать сайт или вебмастеру кажется, что одна неправильная команда удалит файлы. Успокойтесь.
Открытие и чтение логов — это абсолютно безопасно. Логи — это запись прошедших событий. Прочитать их значит просто посмотреть историю обращений. Вы не сломаете никакой код, не удалите файлы и не заблокируете доступ к сайту. Это просто текстовый файл.
Вебмастер или SEO-специалист, который видит неполную индексацию, часто начинает с самых сложных решений. На самом деле ответ лежит в серверных логах. Просто откройте файл и посмотрите: как часто Googlebot и Yandexbot приходят на ваш сайт? Какие страницы выходят с ошибками в логах? Вот ответы на главные вопросы.
Анализ логов дает реальную картину того, что происходит между роботом и веб-сервером. Это решает проблему неполной индексации. И начать можно прямо сейчас.
