Disallow и Allow: правила и синтаксис
Основы
Disallow — запретить обход. Allow — разрешить обход.
Применяются к:
- Всему сайту (
/). - Папкам (
/admin/). - Файлам (
/secret.html). - Шаблонам (
/*?sort=).
Правило: без явного Allow действует Disallow.
Базовый синтаксис
User-agent: *
Disallow: /admin/
Disallow: /private/
Allow: /
Что происходит:
- Всё разрешено.
- Кроме
/admin/и/private/.
Разрешить всё
User-agent: *
Disallow:
Пустой Disallow — всё разрешено.
Правило: это по умолчанию, если нет других правил.
Запретить всё
User-agent: *
Disallow: /
Что делает: полностью закрывает сайт от обхода.
⚠️ Опасно:
- Не использовать в проде.
- Может остаться после тестов.
- Проверять сразу.
Папки
Disallow: /admin/
Слэш в конце — закрыть всю папку.
Disallow: /admin
Без слэша — тоже закроет папку, но не рекомендуется — может закрыть лишнее (например, /administrator/).
Правило: всегда слэш в конце для папок.
Файлы
Disallow: /secret.pdf
Disallow: /README.md
Точный путь — конкретный файл.
Спецсимволы
* — любая последовательность символов:
Disallow: /*.pdf$
Disallow: /*?utm_
Disallow: /*?session
$ — конец URL:
Disallow: /*.php$
Что означает: закрыть URL, оканчивающиеся на .php.
? — любой один символ:
Disallow: /file?.html
⚠️ Не все роботы поддерживают ?.
Комбинации
Пример:
User-agent: *
Disallow: /catalog/
Allow: /catalog/iphone/
Disallow: /catalog/iphone/old/
Что происходит:
- Весь каталог закрыт.
- Но
/catalog/iphone/открыт. - Внутри —
/old/закрыт.
Правило: самый длинный путь — приоритет.
Приоритет правил
Порядок определения победителя:
- Длина совпадающего пути. Чем длиннее — тем приоритетнее.
- Если длины равны — побеждает Allow (по стандарту Яндекса и Google).
- Порядок в файле — не важен.
Пример:
Disallow: /a/
Allow: /a/b/
Disallow: /a/b/c/
Для URL /a/b/c/page: самое длинное — /a/b/c/ → закрыто.
Множественные User-agent
Один блок — один или несколько ботов:
User-agent: Googlebot
User-agent: YandexBot
Disallow: /admin/
Что делает: правило для обоих ботов.
Правило: разделять ботов, если правила разные.
Специфика Google
Google поддерживает:
*— wildcard.$— конец URL.- Allow — приоритет.
- Игнорирует
Crawl-delay. - Не поддерживает
?. - Не поддерживает
Clean-param.
Проверка: GSC → Проверка robots.txt.
Специфика Яндекс
Яндекс поддерживает:
*— wildcard.$— конец URL.- Allow — приоритет.
- Crawl-delay — учитывает.
- Clean-param — только Яндекс.
- Host — устарел, но знает.
Проверка: Вебмастер → Диагностика.
Типичные правила для сайтов
Интернет-магазин:
User-agent: *
Disallow: /admin/
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
Disallow: /search/
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*?utm_
Allow: /catalog/
Allow: /product/
Sitemap: https://example.com/sitemap.xml
Блог:
User-agent: *
Disallow: /admin/
Disallow: /wp-admin/
Disallow: /search/
Disallow: /*?s=
Disallow: /tag/
Allow: /blog/
Sitemap: https://example.com/sitemap.xml
SaaS:
User-agent: *
Disallow: /admin/
Disallow: /app/
Disallow: /api/
Disallow: /settings/
Disallow: /billing/
Allow: /
Sitemap: https://example.com/sitemap.xml
Что закрывать всегда
Служебное:
- Админка —
/admin/,/wp-admin/. - Корзина —
/cart/. - Чекаут —
/checkout/. - Личный кабинет —
/account/,/profile/. - API —
/api/. - Авторизация —
/login/,/register/.
Мусорное:
- Поиск —
/search/,?s=. - Параметры —
?sort=,?filter=,?utm_. - Пагинация —
?page=. - Сессионные —
?sessionid=,?PHPSESSID=.
Правило: закрывать служебное и мусор, не контент.
Что НЕ закрывать
Обязательно открыто:
- CSS / JS — для рендера.
- Картинки — для индекса.
- Каталог — для SEO.
- Блог — для трафика.
- Товары / услуги — деньги.
⚠️ Ошибка закрытия CSS/JS → Google не рендерит → плохие сниппеты.
Проверка в реальном времени
GSC → Проверка robots.txt:
- Открой GSC.
- Настройки → Проверка robots.txt.
- Введи URL.
- Проверь, блокируется ли.
Вебмастер → Инструмент проверки URL.
Screaming Frog:
- Config → Robots.txt.
- Crawl — увидит блокировки.
Логи и анализ
Что смотреть:
- Что закрыто — какие URL не обходятся.
- Что робот ищет — какие обходит.
- Ошибки — если правило некорректное.
Инструменты:
- Log File Analyser (Screaming Frog).
- Вебмастер → Статистика обхода.
- GSC → Статистика сканирования.
Практика
1. Открой свой robots.txt.
2. Проверь, закрыто ли:
- CSS / JS.
- Каталог.
- Блог.
- Админка.
3. Исправь лишнее:
- Открой важное.
- Закрой служебное.
4. Проверь в GSC для 5 URL.
5. Проверь в Вебмастере для 5 URL.
6. Смотри логи за неделю.
7. Отключи закрытие AI-ботов или оставь осознанно.
Частые ошибки
1. Закрыть CSS:
Disallow: /css/
Решение: открыть.
2. Disallow без слэша:
Disallow: /admin
Решение: Disallow: /admin/.
3. Много *:
Случайно закрыть нужное
Решение: проверять.
4. Порядок в файле:
Надеяться, что порядок решает
Решение: длина пути.
5. Закрыть каталог:
Нет трафика
Решение: открыть.
6. Не закрыть ?sort=:
Тысячи дублей
Решение: закрыть.
7. Crawl-delay для Google:
Игнорирует
Решение: только для Яндекса.
8. Не проверять после деплоя:
Сломать индекс
Решение: GSC / Вебмастер.
Итог
- Disallow — запрет, Allow — разрешение.
- Слэш в конце для папок.
*и$— wildcards.- Длина пути решает.
- Allow > Disallow при равной длине.
- Порядок в файле не важен.
- Закрывать служебное и мусор.
- Открывать CSS, JS, каталог.
- Проверять через GSC / Вебмастер.
- Логи — правда о поведении.
Дальше — Noindex и nofollow.