Почему robots.txt не генерируется: симптомы и причины

Если после нажатия кнопки генерации файл не собирается, а сервис выводит предупреждение, проверьте типовые сценарии:

  • «Укажите хотя бы один User-agent». Список роботов очищен: верните символ * или впишите конкретное имя робота.
  • «Crawl-delay должен быть числом». В поле задержки введены буквы, пробелы или спецсимволы вместо целого числа.
  • Некорректные директивы Disallow и Allow. Пути должны начинаться со слэша и не содержать посторонних знаков, иначе валидация остановит сборку файла.

Ниже - полный разбор ошибок валидации, корректные значения полей и порядок устранения каждой проблемы.

Как быстро сгенерировать robots.txt

Чтобы создать корректный файл инструкций для поисковых ботов, перейдите в генератор robots, заполните список роботов и правила доступа к разделам, после чего нажмите кнопку «Сгенерировать robots.txt». Сервис мгновенно сформирует готовый текстовый блок с распределением директив по секциям, подсчитает их количество и общий размер файла, который останется только скопировать в корень вашего сайта.

Инструмент решает типовые задачи при запуске и поддержке проекта: помогает закрыть от индексации панель управления (/admin/), скрыть системные скрипты и API (/api/), предотвратить сканирование дублей страниц, ограничить частоту обращений к серверу и указать путь к XML-карте сайта.

Поля формы и подготовка данных

Для корректной сборки файла форма генератора разделена на несколько функциональных блоков:

  • Поле user_agents. Обязательное многострочное поле. Имена ботов указываются по одному на строку. Символ * задает общие правила для всех роботов без исключения. Если указать несколько конкретных имен, сервис создаст для каждого из них отдельную секцию с заданными правилами.
  • Поля allow и disallow. Многострочные списки путей (по одному на строку), определяющие разрешенные и запрещенные для сканирования каталоги. По умолчанию в форме уже заданы стартовые значения: разрешен корень сайта (/), а запрещены служебные разделы /admin/, /private/ и /api/.
  • Поле crawl_delay. Числовое значение задержки в секундах между последовательными запросами робота к серверу для снижения нагрузки.
  • Поля sitemap и host. Текстовые поля для указания полной ссылки на карту сайта и адреса главного зеркала. Эти директивы автоматически помещаются в самый конец итогового файла.

Пошаговая инструкция по генерации файла

  1. Задайте список роботов. Введите * для общих правил или перечислите названия нужных ботов построчно в поле «user_agents».
  2. Определите доступы. Заполните списки путей в блоках «allow» и «disallow», начиная каждый путь со слеша (например, /cart/ или /search/).
  3. Настройте дополнительные директивы. При необходимости укажите задержку обхода в поле «crawl_delay», вставьте ссылку на карту в «sitemap» и адрес зеркала в «host».
  4. Сформируйте файл. Нажмите кнопку «Сгенерировать robots.txt».
  5. Скопируйте результат. Полученный текст вместе с директивами Host и Sitemap перенесите в файл robots.txt в корневой директории вашего сервера.

Пример заполнения полей

Для стандартного сайта базовый набор параметров выглядит следующим образом:

  • user_agents: text *
  • allow: text /
  • disallow: text /admin/ /private/ /api/ /search/ /cart/
  • crawl_delay: 2
  • sitemap: https://zyntec.ru/sitemap.xml
  • host: `https://zyntec.ru

В результате генератор сформирует секцию User-agent: * с директивами Allow, Disallow и Crawl-delay, а в финале добавит строки Host: и Sitemap:.

Ошибки при работе с генератором и их устранение

Сервис валидирует введенные значения перед сборкой структуры. При некорректном заполнении полей генерация останавливается:

  • Пустое поле User-agent. Если очистить список роботов и отправить форму, сервис выдаст ошибку: «Укажите хотя бы один User-agent». Для исправления достаточно вернуть символ * или ввести конкретное имя робота.
  • Некорректный формат Crawl-delay. Поле задержки принимает строго числовые значения. Если ввести текст, пробелы или спецсимволы, инструмент покажет ошибку: «Crawl-delay должен быть числом». Укажите целое число секунд или оставьте поле пустым, если ограничение скорости не требуется.
  • Слипшиеся пути в правилах. Если перечислить несколько директив в одну строку через запятую, они будут восприняты как один некорректный путь. Всегда указывайте каждый путь в полях «allow» и «disallow» с новой строки.

Читайте также