Что такое robots.txt и как правильно его настроить?

Получится ли? Держите ответ в уме, ниже вы сможете проверить, совпадают ли наши мысли.
Я просто оставлю скрин переписки действующего сеошника с программистом (который, конечно же, «шарит в SEO»), после того, как я посоветовал их клиенту закрыть мусор от индексации простым правилом Disallow: *? :

Что такое robots.txt?

*Чтобы найти все страницы сайта, которые закрыты в robots.txt, можно использовать «Аудит сайта» Serpstat.
Почему важно управлять индексацией
Но у вас не простой сайт-визитка из пары страниц (хотя и такие уже давно создаются на CMS вроде Wordpress/MODx и других) и вы работаете с любой CMS (а значит и с языками программирования, скриптами, базой данных и т. д.) — то столкнетесь с такими «прелестями», как:
Вроде бы не так страшно, место в Яндексе не закончится, но быстро закончится доверие поисковой системы к вашему ресурсу. Как следствие — понижение позиций и трафика, фильтры, депрессия и т. д.

Что нужно закрывать в robots.txt
Даже, если вы сразу не сможете закрыть 100% проблем, остальное дозакрывается на этапе индексации. Не всегда сразу можно понять, какие косяки вылезут, и не всегда они вылезают из-за технических проблем. Существует и человеческий фактор.

Заказывайте бесплатную персональную демонстрацию сервиса, и наши специалисты вам все расскажут! ;)
Влияние файла robots.txt на Яндекс и Google
Google же считает себя умнее и сам решает что и как ему индексировать. Однако если СРАЗУ закрыть страницы в robots.txt (до выпуска сайт в индекс), то вероятность того, что они попадут в Google намного ниже.
Но как только на закрытые страницы пойдут ссылки или трафик — поисковая система сочтет их нужными для индексации.
<html>
<head>
<meta name=“robots” content=“noindex,nofollow”>
<meta name=“description” content=“Эта страница ….”>
<title>…</title>
</head>
<body>
Онлайн-генераторы
Для примера возьмем генератор PR-CY.
Все, что он делает — подставляет за вас слово «Disallow» и «User-agent». Экономии времени — 0, пользы — 0, смысла использовать — тоже 0.

Структура и правильная настройка robots.txt
Для понимания:
Давайте разбирать директивы.
Директива User-agent
Для Яндекса у нас есть следующие юзер-агенты (если вы решите закрывать страницы именно для конкретного бота, а не всех):
Директива Disallow
Пример использования:
У нас есть поиск на сайте, который генерирует URL вида:
Disallow: /search
Директива Host
User-agent: Yandex
Disallow: /cgi-bin
Host: site.ru
Директива Sitemap
Sitemap: https://site.ru/site_structure/my_sitemaps1.xml
Директива Clean-param
Т. е. вы дадите понять роботу Яндекса, чтобы он не напрягался лишний раз и не сканировал одинаковые страницы, а уделял больше времени важным документам.
Например, на сайте есть страницы:
User-agent: Yandex
Clean-param: ref /some_dir/get_book.pl
P.S. От себя еще добавлю, что данная директива на практике используется нечасто. В основном для UTM-меток.
Директива Crawl-Delay
Кажется, что можно заставить бота посещать страницы сайта 10 раз за секунду, указав значение 0.1, но нет:

Дополнение
Символ * — любая последовательность символов.
Пример использования:
У вас есть товары и в каждом товаре есть отзывы:
Следовательно, нам нужно как бы пропустить названия продуктов:
Disallow: /*/reviews
Решение:
Disallow: /*/reviews/$
Да, мы могли просто вернуть отзыв Жорика с помощью Allow и повторить еще 2 раза для 2 других URL, но это не рационально, потому что если завтра нужно будет открыть 1 тыс. отзывов — вы же не будете 1 тыс. строк писать?
6 популярных косяков в robots.txt
Пустой Disallow
Disallow:
Кривое закрытие от Яндекса
Disallow: Yandex
Ошибка названия
Перечисление папок
Disallow: /category-1
Disallow: /category-2
Перечисление файлов
Забивание на проверки
Всегда используйте валидатор!
Пример robots.txt
User-agent: Yandex # Обращение к роботу Яндекса
Disallow: /wp-content/uploads/ # Закрываем всю папку
Allow: /wp-content/uploads/*/*/ # Открываем папки картинок вида /uploads/close/open/
Disallow: /wp-login.php # Закрытие файла. Делать не нужно
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /template.html
Disallow: /cgi-bin # Закрываем папку
Disallow: /wp-admin # Закрываем все служебные папки в CMS
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /wp-trackback
Disallow: /wp-feed
Disallow: /wp-comments
Disallow: */trackback # Закрываем URL содержащие /trackback
Disallow: */feed # Закрываем URL содержащие /feed
Disallow: */comments # Закрываем URL содержащие /comments
Disallow: /archive # Закрываем архивы
Disallow: /?feed= # Закрываем фиды
Disallow: /?s= # Закрываем URL поиска по сайту
Allow: /wp-content/themes/RomanusNew/js* # Открываем только папку js
Allow: /wp-content/themes/RomanusNew/style.css # Открываем файл style.css
Allow: /wp-content/themes/RomanusNew/css* # Открываем только папку css
Allow: /wp-content/themes/RomanusNew/fonts* # Открываем только папку fonts
Host: romanus.ru # Указание главного зеркала, уже неактуально
Sitemap: http://romanus.ru/sitemap.xml # Абсолютная ссылка на карту сайта
Проверка и валидация

Disallow: /wp-content/uploads/
Allow: /wp-content/uploads/*/*/
Disallow: */trackback
Disallow: /?feed=
Disallow: /?s=
Allow: /wp-content/themes/RomanusNew/js*
Allow: /wp-content/themes/RomanusNew/style.css

Особо внимательные могли увидеть, что открыт для индексации URL http://romanus.ru/random-1/?s=random-page. Дело в том, что у меня URL поиска имеют вид строго site.ru/?s=… Они не могут быть в какой-то папке.
В другом случае, мне пришлось бы заменить правило Disallow: /?s= на Disallow: */?s=
Файл robots.txt для популярных CMS
Поэтому если у вас окажется немного нестандартное решений или дополнительные плагины, которые меняют URL и т. д., то могут быть проблемы с индексацией и закрытием лишнего.
Поэтому предлагаю ознакомиться и взять за основу robots.txt для следующих CMS:
Заключение
FAQ
Где находится файл robots txt?
Файл robots txt находится в корневом каталоге сайта на хостинге. Обычно его можно просмотреть, добавив к адресу сайта /robots.txt. В файле содержатся директивы, управляющие доступом поисковых роботов ко всему сайту или его отдельным разделам, а также указан адрес карты сайта Sitemap.xml.
Как снять ограничения в файле robots txt?
Ограничения доступа поисковых ботов ко всему сайту, его отдельным разделам и страницам прописывается с помощью директивы Disallow. Убрав из файла эту директиву, вы откроете доступ к индексации всех страниц сайта, в том числе и служебных. Отдельные разделы и страницы можно открыть с помощью директивы Allow.
Как проверить наличие robots txt?
Чтобы проверить наличие файла robots txt на сайте, введите в поисковую строку его URL-адрес таким образом: site.com/robots.txt. Просмотреть файл robots можно также в Яндекс.Вебмастере. В сервисе можно проанализировать, не содержит ли robots txt ошибки.
Сэкономьте время на изучении Serpstat
Хотите получить персональную демонстрацию сервиса, тестовый период или эффективные кейсы использования Serpstat?
Оставьте заявку и мы свяжемся с вами ;)
Кейсы, лайфхаки, исследования и полезные статьи
Не успеваешь следить за новостями? Не беда! Наш любимый редактор Анастасия подберет материалы, которые точно помогут в работе. Присоединяйся к уютному комьюнити :)
Нажимая кнопку, ты соглашаешься с нашей политикой конфиденциальности.