Как управлять доступом ИИ-ботов к сайту: практическая настройка
Когда статья открыта в интернете, её могут читать не только люди и поисковые роботы. Отдельные программы собирают страницы для ответов, индексации или обучения моделей. Полностью спрятать публичный текст невозможно, но можно управлять добросовестными обходчиками и отсекать лишние запросы на сервере. Главное — не перепутать защиту от обучения с запретом поисковой индексации.
Сначала определите цель
У владельца сайта обычно одна из трёх задач. Первая — разрешить чтение всем, чтобы материалы чаще попадали в поисковые ответы. Вторая — оставить поисковых роботов, но попросить обучающие краулеры не забирать контент. Третья — закрыть часть страниц из-за договора, платного материала или персональных данных. Для каждой цели нужен свой уровень ограничения.
Составьте список путей: публичные статьи, личный кабинет, API, черновики и служебные файлы. Не применяйте правило ко всему домену, пока не проверили, какие URL нужны Googlebot и Яндексу. Ошибка в одной строке robots.txt способна убрать из выдачи весь сайт.
Что делает robots.txt
Файл размещается в корне домена по адресу /robots.txt. В нём указывают User-agent и доступные пути. Пример точечного запрета для известных обучающих обходчиков:
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
User-agent: Google-Extended
Disallow: /
Название Google-Extended относится к использованию страниц в определённых AI-сценариях Google, а не к обычному Googlebot. Поэтому не добавляйте общий User-agent: * Disallow: /, если хотите сохранить поисковый трафик. Для закрытия только служебной зоны безопаснее указать путь, например Disallow: /admin/, а публичным статьям оставить Allow: /.
Важно понимать границу метода: robots.txt — договорённость. Ответственный робот прочитает файл, злоумышленник может его проигнорировать. Не размещайте секреты, пароли и персональные данные в публичной папке в надежде, что их остановит одна директива.
Когда нужны серверные правила
Если обходчик создаёт нагрузку или продолжает обращаться к закрытым URL, добавьте проверку на уровне nginx, Apache, CDN или WAF. По User-Agent можно вернуть 403, ограничить частоту запросов или отправить подозрительный трафик на отдельное правило. Список идентификаторов придётся обновлять: новые боты могут представляться иначе, а User-Agent легко подделать.
Сначала включите режим наблюдения. Посмотрите access-логи за несколько дней, сгруппируйте запросы по User-Agent и IP, оцените частоту и запрашиваемые пути. Только после этого ставьте жёсткий блок. Так вы не заблокируете полезный мониторинг, проверку ссылок или собственного Telegram-бота.
Закрытие отдельных материалов
Для страницы, которую не нужно показывать в поиске, используют noindex в HTTP-заголовке или мета-теге. Директивы вроде noai и noimageai могут дополнительно сообщать о нежелательном использовании текста и изображений для обучения, но поддержка зависит от конкретного робота. Это сигнал о правилах, а не криптографический замок.
Проверяйте, что закрытый URL не попадает в sitemap и не связан с публичной страницей. Если материал уже скопировали, запрет в robots.txt не удалит старую копию. Для платного контента нужен настоящий контроль доступа: авторизация, срок действия ссылки и отсутствие данных в HTML до проверки прав.
Как не потерять SEO
После изменения файла проверьте главную, одну статью, RSS и sitemap. Запросите их обычным браузером и инструментом проверки robots.txt в панелях вебмастера. Если в логах резко исчезли обращения Googlebot или Яндекса, откатите последнее правило и ищите ошибку в синтаксисе. Не закрывайте CSS, JavaScript и изображения без причины: поисковику может понадобиться разметка страницы.
Если вы разрешаете обучение, всё равно контролируйте нагрузку и копирование. Если запрещаете, оставьте понятные правила для поисковых роботов и людей. В обоих случаях храните резервную версию robots.txt с датой изменения и именем ответственного.
Контрольный сценарий на неделю
В первый день зафиксируйте текущие правила и число обходов. На второй добавьте одно точечное изменение. В течение трёх дней сравнивайте ошибки сервера, скорость страниц и поисковые показы. В конце недели проверьте, что нужные URL доступны, запрещённые не отдаются без авторизации, а нагрузка от неизвестных агентов не выросла.
Такой порядок позволяет выбирать между открытостью и ограничением осознанно. Роботы — лишь часть архитектуры сайта: настоящая защита строится на правильных правах доступа, логах, резервных копиях и регулярной проверке, а не на одной строке в текстовом файле.
Что записать в регламент
Проверка с позиции владельца контента
Сделайте таблицу из пяти URL: главная, статья, закрытый черновик, API и файл robots.txt. Для каждого запишите ожидаемый ответ обычного посетителя, Googlebot, Яндекс-бота и выбранного AI-краулера. Затем проверьте заголовки и код ответа в тестовом окружении. Если закрытая страница всё равно появляется в sitemap или отдаётся до проверки авторизации, исправляйте маршрут, а не маскируйте проблему новой строкой robots.txt.
После изменений сохраните снимок правил и короткое объяснение причины. Через месяц другой администратор должен понять, почему один путь открыт, а соседний закрыт. Это снижает риск случайного разрешения при обновлении CMS и помогает быстро восстановиться после неудачного эксперимента.
При обсуждении видимости в AI-поиске полезно сопоставить ограничения с разбором различий чат-бота и поиска: запрет обучения не обязан означать запрет индексации.
Укажите, какие разделы открыты, какие агенты разрешены, кто меняет правила и где лежит резервная копия. Добавьте дату следующей проверки и контакт администратора. При публикации нового раздела повторяйте тест доступа с обычным браузером и поисковым роботом. Если сайт работает через CDN, сверяйте настройки CDN с nginx: противоречивые правила часто выглядят как случайные ошибки доступности.