«Наверное, закрыт настройками» — первое, что слышит владелец, когда его сайта нет в поиске. Мы решили посмотреть, как часто это правда, и обошли 260 адресов компаний Екатеринбурга тремя агентами сразу: обычным браузером, роботом Яндекса и роботом Google.
Что именно мы спрашивали
22.09.2026 каждый адрес получил три одинаковых запроса на главную, отличавшихся только строкой агента, и один запрос на /robots.txt. Сравнивали код ответа, размер тела, заголовок X-Robots-Tag, метатеги robots и содержимое файла правил. Ответили 242 адреса, остальные молчали — почему сайт не отвечает, мы разбирали отдельно.
| Что искали | Нашли |
|---|---|
robots.txt закрывает сайт целиком всем роботам | 1 |
robots.txt закрывает сайт роботу Яндекса | 2 |
Метатег robots со значением noindex | 1 |
Заголовок X-Robots-Tag с запретом | 0 |
Четыре запрета на 242 ответивших. Запрет — редкость, а не объяснение по умолчанию.
Четыре случая, разобранные поимённо
Стоматология, закрытая целиком. Файл из двух строк: User-agent: * и Disallow: /. Так закрывают площадку на время разработки и забывают открыть.
Автосервис, открывший Яндексу одиннадцать адресов. В секции User-agent: Yandex стоит Disallow: /, а ниже — одиннадцать строк Allow на отдельные услуги. Это белый список: всё запрещено, кроме перечисленного. Приём рабочий, но цена ошибки высокая — забытый в списке раздел не попадёт в поиск никогда.
Медцентр с картой сайта и запретом. Яндексу закрыт весь сайт, и тут же указана Sitemap. Робот получает список страниц и запрет их читать одним файлом.
Школа английского с noindex на главной. Метатег стоит без оговорок, то есть главная страница исключена из поиска.
Отличить умысел от забытой строки снаружи нельзя, и это главное ограничение любой такой проверки.
Пустая страница с кодом «всё в порядке»
Самое интересное нашлось не в запретах. Две площадки отвечают роботу Google кодом 200 и пустым телом: ноль байт вместо страницы. Браузеру и роботу Яндекса тот же адрес отдаёт полную версию.
| Кем представляемся | Что получаем |
|---|---|
| Браузер Chrome | 48 303 байта, полная страница |
| Робот Яндекса | 48 303 байта, полная страница |
| Робот Google | код 200, тело пустое |
curl без маскировки | 48 303 байта |
| Робот Ahrefs | код 403 |
Достаточно слова Googlebot в строке агента — остальное сервер не читает. У обеих площадок один и тот же сервер и одинаковый отказ роботу Ahrefs: похоже на общее правило защиты у хостера, а не на решение владельца.
Опасность такой настройки в том, что она невидима для проверок. Код ответа — 200, файл правил чистый, метатегов нет. Любой сервис отчитается «страница доступна», а в поиске Google её не будет, потому что читать нечего.
Честная оговорка: мы ходили с российского адреса, а настоящий робот Google приходит с адресов Google и подтверждается обратным разрешением имени. Возможно, защита пропускает проверенного робота и отсекает только тех, кто им представляется. Проверить это снаружи нельзя — зато видно, что решение принимается по строке агента.
Закрыто не запретом, а дверью
Ещё четыре способа остаться вне поиска, не написав ни одного запрета:
- Пароль на входе. Две площадки отвечают кодом 401 всем подряд, включая роботов. Обычно это тестовая версия, которую забыли открыть.
- Отказ без объяснений. Одна отвечает 403 и браузеру, и роботам.
- Файл правил не отдаётся. По адресу
/robots.txtшесть площадок отвечают «не найдено», две — «слишком много запросов», две отдают HTML-страницу вместо текста. Для робота это не правила, а мусор. - Файл есть, но пустой. У трёх он короче двадцати байт.
Что похоже на настройку, но ею не является
Метатег robots стоит у 88 площадок. Из 91 найденного значения 43 не меняют ничего: index, follow и all повторяют поведение робота по умолчанию. Работу делают 41 значение с max-image-preview и max-snippet — они управляют видом сниппета, а не допуском.
Два наследия живут в файлах правил дольше, чем в справке:
Host— встретилась у 75 площадок. В справке Яндекса страницы о ней больше нет: адрес отдаёт «нет такой страницы», а в оглавлении раздела перечислены толькоUser-agent,DisallowиAllow,Sitemap,Crawl-delayиClean-param.Crawl-delay— у 12. Справка Яндекса говорит прямо: «С 22 февраля 2018 года Яндекс перестал учитывать директиву Crawl-delay». Скорость обхода задают в Вебмастере.
Обе строки безвредны, но создают ощущение, что файлом занимались. Занимались — в 2017 году.
Как посмотреть у себя
Сравнение двух ответов занимает секунду и ловит то, чего не видно в коде страницы:
curl -s -o /dev/null -w '%{http_code} %{size_download}\n' https://сайт.ru/
curl -s -o /dev/null -w '%{http_code} %{size_download}\n' -A 'Googlebot' https://сайт.ru/
Коды должны совпасть, размеры — тоже, с точностью до нескольких байт. Расхождение означает, что сервер принимает решение по строке агента, и дальше стоит спросить хостера, какое правило это делает.
Проверить сам файл правил на то, что он текстовый, а не страница:
curl -sI https://сайт.ru/robots.txt | grep -iE 'HTTP/|content-type'
Четыре места, где живёт сам запрет — метатеги robots и yandex, заголовок X-Robots-Tag, файл правил, — мы разбирали в отдельной статье вместе с командами на каждое.
Границы замера
Мы смотрели только главную страницу: запрет во внутреннем разделе такой обход не покажет. Строка агента — единственное, чем отличались запросы; подтверждения робота по адресу, как это делает поиск, у нас нет. Ответы снимались один раз, за сутки картина могла измениться. И ещё раз: «запретов нет» не означает «всё настроено» — это значит только, что дело не в запрете.
Коротко
При обходе 260 адресов явный запрет индексации нашёлся у четырёх площадок из 242 ответивших — версия «закрыто настройками» почти никогда не подтверждается. Зато нашлось то, чего в файле правил не видно: две площадки отдают роботу Google пустую страницу с кодом «всё в порядке». Если сайта нет в поиске, а запретов не нашлось, причину ищут дальше — во входящих ссылках, возрасте домена и дублях, а не в настройках.
