Прежде чем обходить сайт, робот запрашивает один и тот же
адрес: ваш-сайт/robots.txt. Если файл есть, робот
читает правила и дальше их соблюдает. Если файла нет — обходит
всё подряд.
Зачем это знать
Ради одной строки, которой ломают сайты чаще всего. Файл пишется за минуту, а ошибка в нём убирает сайт из поиска целиком — и заметить это можно через месяц, когда посещаемость уже упала. Разобраться дешевле, чем чинить.
Из чего он состоит
Правила пишутся блоками. Блок начинается со строки
User-agent — для какого робота правила, дальше
идут запреты и разрешения.
User-agent: *
Disallow: /manager/
Disallow: /assets/cache/
Disallow: /*?print=
Allow: /assets/
Sitemap: https://eazy-logic.ru/sitemap.xml
| Строка | Смысл |
|---|---|
User-agent: * |
Правила для всех роботов. Вместо звёздочки может стоять имя конкретного |
Disallow: /manager/ |
Не заходить в этот раздел и всё, что внутри |
Allow: /assets/ |
Исключение из запрета: сюда можно |
Sitemap: |
Где лежит карта сайта. Пишется полным адресом |
Звёздочка внутри пути означает «любые знаки»: правило
/*?print= закрывает все адреса с этим
параметром, где бы он ни встретился.
Чего этот файл не делает
Тут два заблуждения, из-за которых случаются неприятности.
-
Это не защита. Файл открыт всему
интернету: любой может посмотреть, что вы прячете, и
зайти туда. Строка
Disallow: /secret-admin/— это указатель со стрелкой, а не замок. Закрывают разделы паролем, а не просьбой не заходить. -
Это не удаление из поиска. Запрет
означает «не заходи на страницу», а не «убери её
из выдачи». Если на закрытую страницу кто-то ссылается,
она может остаться в поиске — без описания, одним
адресом. Чтобы убрать страницу из выдачи, нужен метатег
noindexна самой странице, а доступ к ней у робота должен остаться: иначе он просто не увидит этого тега.
Строка, которая убивает сайт
Disallow: / закрывает весь сайт целиком.
Её ставят на время разработки и забывают снять при
публикации — это самая частая беда при переносе сайта
на хостинг. Проверять после каждого переезда,
обязательно.
Правила оформления
- Файл лежит строго в корне:
сайт/robots.txt, и нигде больше. - Имя только маленькими буквами, кодировка UTF-8, никакого HTML внутри.
- Пустая строка разделяет блоки правил — не ставьте её посреди блока.
- Комментарий начинается со знака
#и полезен: через год вы не вспомните, зачем закрывали раздел. - Стили, скрипты и картинки закрывать нельзя: робот должен видеть страницу такой же, как человек.
- Устаревшие строки вроде
HostиCrawl-delayсегодня не нужны: главное зеркало задаётся переадресацией, а скорость обхода настраивается в Вебмастере. - Одна строка — одно правило. Перечислять несколько путей через запятую нельзя, такую строку робот просто пропустит.
Правила для отдельных роботов
Блоков может быть несколько: один общий и по одному
на конкретного робота. Имя робота пишется вместо звёздочки,
например User-agent: Yandex. Важная тонкость:
робот читает только один блок — свой, а если своего нет,
то общий. Правила из двух блоков не складываются, поэтому
в личный блок нужно переписать и всё то, что уже есть
в общем.
В последние годы появился новый повод заглянуть в этот файл: сайты обходят не только поисковики, но и роботы, собирающие тексты для обучения нейросетей. У каждого своё имя, и если вы не хотите отдавать им содержимое, для них заводится отдельный блок с запретом. Решение тут ваше: одни хотят попасть в ответы ассистентов, другие — нет.
Что просить у нейросети
Составь robots.txt для сайта-справочника
на Evolution CMS. Домен eazy-logic.ru,
карта сайта лежит в корне.
Нужно закрыть служебные разделы движка и папку кеша, оставив открытыми стили, скрипты, шрифты и картинки. Страницу поиска по сайту и адреса с параметрами сортировки тоже закрой.
К каждой строке дай комментарий, зачем она. Отдельно перечисли, чего этот файл не делает, чтобы я не считал его защитой. И скажи, как проверить готовый файл перед публикацией.
Как проверить, что получилось
- Открыть
ваш-сайт/robots.txtв браузере: файл должен показаться текстом, а не скачаться и не выдать ошибку. - Проверить инструментом в Вебмастере: он разбирает файл и говорит, какие строки не понял.
- Ввести туда же адрес важной страницы и убедиться, что она разрешена.
- После переезда на хостинг — перечитать файл глазами и найти
Disallow: /, если он там остался.
Что стоит запомнить
- Файл лежит в корне сайта и открывается по прямому адресу
-
Disallowзапрещает заходить, но не убирает из поиска - Это не защита: файл виден всем и указывает, где что лежит
- Стили, скрипты и картинки закрывать нельзя
-
После публикации сайта первым делом проверить, что нет
Disallow: /