Как поисковики находят страницы
Как поисковики находят страницы — это цепочка из трёх разных шагов: обнаружение, обход и индексация. Они часто путаются, а ошибки в них лечатся по-разному. В этом уроке — как Google находит адреса, почему обход не гарантирует индексацию, где пересекаются robots.txt и noindex и кому на самом деле нужно думать о краулинговом бюджете.
Опираться будем на руководство по краулинговому бюджету и на введение в robots.txt.
Шаг первый: как Google находит адреса
Два основных пути — ссылки и карта сайта. По ссылкам Googlebot идёт буквально: он разбирает ответ и берёт адреса из атрибута href в HTML-ссылках, а ссылка работает, только если это элемент a с атрибутом href. Карта сайта — второй канал, но не обязательный: в обзоре прямо сказано, что если вам не нужны результаты для видео, изображений или новостей, карта сайта может не понадобиться. Подробнее — в уроке про XML-карты.
Вывод для структуры: страница, на которую ведёт хотя бы одна обычная ссылка из уже известного раздела, находится надёжнее, чем страница, существующая только в карте сайта. Что именно нашёл обход по ссылкам, показывает сканер сайта, а какие страницы никуда не ведут — анализ внутренних ссылок. Принципы структуры разобраны в уроке про информационную архитектуру.
Шаг второй: обход — и что его ограничивает
Google не обходит всё подряд: краулинговый бюджет сайта определяется двумя составляющими — пределом пропускной способности обхода и потребностью в обходе. Предел нужен, чтобы не перегружать сервер: он учитывает число параллельных соединений и их длительность. Потребность для Googlebot зависит от размера сайта, частоты обновлений, качества и релевантности страниц по сравнению с другими сайтами.
Бюджет считается для хоста: поддомены рассматриваются как отдельные сайты с отдельными бюджетами.
Кому это нужно на самом деле
Самое частое преувеличение в теме. Руководство Google предназначено для узкого круга: сайты от миллиона уникальных страниц с еженедельными изменениями, сайты от 10 000 страниц с ежедневными изменениями и сайты, у которых большая доля адресов в Search Console помечена как «Обнаружено — не проиндексировано». Там же оговорено, что это грубая оценка, а не пороги. И ещё: если страницы обходятся в день публикации, читать это руководство не нужно — достаточно поддерживать карту сайта актуальной и регулярно смотреть отчёт об индексации.
Для сайта на несколько сотен страниц «краулинговый бюджет» почти всегда не причина проблем — причина в качестве, дубликатах и структуре.
Шаг третий: обход не равен индексации
В том же руководстве сказано: не каждая обойдённая страница будет проиндексирована — после обхода её оценивают, консолидируют и решают, подходит ли она для индекса. В отчёте об индексации это два разных статуса, и их нужно различать:
| Статус в отчёте | Что означает | Что делать |
|---|---|---|
| Обнаружено — не проиндексировано | Страница найдена, но не обойдена: Google хотел обойти, но ожидал перегрузки сайта и перенёс обход | Проверить скорость ответа и объём лишних адресов |
| Просканировано — не проиндексировано | Страница обойдена, но не проиндексирована; она может быть проиндексирована позже, повторно отправлять не нужно | Смотреть на качество и уникальность, а не на обход |
Разбор по каждому адресу делает аудит URL.
Где пересекаются robots.txt и noindex
Это самая дорогая путаница в технической части. robots.txt нужен главным образом, чтобы не перегружать сайт запросами, и не является механизмом, который убирает страницу из Google. Чтобы убрать страницу, используют noindex или защиту паролем.
А теперь связка, на которой ошибаются чаще всего. Правило noindex действует, только если страница не заблокирована в robots.txt и вообще доступна обходчику; в противном случае он никогда не увидит правило, и страница всё равно может попасть в результаты — например, если на неё ссылаются другие страницы.
Состояние правил смотрят в отчёте о robots.txt. Если роботу нужны для понимания страницы скрипты и стили, их блокировать не нужно, иначе анализ будет хуже.
Что тратит обход впустую
| Проблема | Почему плохо | Что делать |
|---|---|---|
| Фильтры и сортировки как отдельные адреса | Конечный каталог превращается в безграничное множество URL; об этом есть отдельное руководство | Решить, какие комбинации нужны поиску; остальные — не обходить |
| Ссылки на 404 | Обход тратится на несуществующее | Исправить ссылки; найти — 404 в органике |
| Цепочки редиректов | Несколько обращений вместо одного | Вести ссылки сразу на конечный адрес: проверка редиректов |
| Медленный сервер | Падает предел пропускной способности обхода | Смотреть отчёт «Статистика сканирования» |
| Устаревшая карта сайта | Адреса, которых нет, и отсутствующие новые | Следить через мониторинг sitemap |
Нормы вроде «ответ сервера быстрее 200 мс» или «важная страница не глубже четырёх кликов» в документации Google не встречаются. Скорость проверяют по фактической статистике сканирования, а доступность страницы — по наличию осмысленного пути к ней, а не по числу кликов.
JavaScript и мобильный обходчик
Google обрабатывает JavaScript-приложения в три фазы: обход, рендеринг, индексация, причём если адрес запрещён в robots.txt, Google пропускает запрос и не рендерит JavaScript с заблокированных страниц. Ссылки, которых нет в HTML, а появляются только после действия пользователя, остаются слепым пятном.
Обходчиков два: Googlebot Smartphone и Googlebot Desktop, оба подчиняются одному токену в robots.txt, поэтому выборочно запретить только один нельзя. Для большинства сайтов поиск в основном индексирует мобильную версию, и большая часть запросов обхода делается мобильным обходчиком. Значит, ссылки и контент, которых нет в мобильной версии, для Google фактически отсутствуют.
Диагностика по шагам
- Обнаружена ли страница? Есть ли обычная ссылка и запись в карте сайта.
- Обойдена ли? Не закрыта ли в robots.txt, отвечает ли сервер, видна ли в статистике сканирования.
- Проиндексирована ли? Нет ли noindex, не дубль ли, чем отличается по сути.
- Совпадают ли сигналы? Disallow и noindex не должны быть на одной странице.
Ошибки
- Закрывать страницу через Disallow, чтобы убрать её из поиска.
- Ставить Disallow и noindex одновременно.
- Решать проблему «краулингового бюджета» на сайте, где страницы обходятся в день публикации.
- Считать, что наличие в карте сайта гарантирует индексацию.
- Повторно отправлять одну и ту же страницу вместо того, чтобы разобраться, почему она не индексируется.
- Проверять только десктопную версию.
Что дальше
Следующий урок — о карте сайта: что она реально делает и что в ней должно быть, а чего не должно.