Директивы и настройка robots.txt

5 минут
Хочу получать материалы по интернет-маркетингу и SEO

Robots.txt – это служебный файл, который служит рекомендацией по ограничению доступа к содержимому веб-документов для поисковых систем.  В данной статье мы разберем настройку Robots.txt, описание директив и составление его для популярных CMS.

Находится данный файл Робота в корневом каталоге вашего сайта и открывается/редактируется простым блокнотом, я рекомендую Notepad++. Для тех, кто не любит читать — есть ВИДЕО, смотрите в конце статьи 😉

  1. В чем его польза
  2. Директивы и правила написания
  3. Мета-тег Robots и его директивы
  4. Правильные роботсы для популярных CMS
  5. Проверка робота
  6. Видео-руководство
  7. Популярные вопросы

Зачем нужен robots.txt

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

  • Служебные файлы и папки CMS
  • Дубликаты
  • Документы, которые не несут пользу для пользователя
  • Не уникальные страницы

Разберем конкретный пример:

Интернет-магазин по продаже обуви и реализован на одной из популярных CMS, причем не лучшим образом. Я могу сразу сказать, что будут в выдаче страницы поиска, пагинация,  корзина, некоторые файлы движка и т.д. Все это будут дубли и служебные файлы, которые бесполезны для пользователя. Следовательно, они должны быть закрыты от индексации, а если еще есть раздел «Новости» в которые копипастятся разные интересные статьи с сайтов конкурентов – то и думать не надо, сразу закрываем.

Поэтому обязательно получаемся файлом robots.txt, чтобы в выдачу не попадал мусор. Не забываем, что файл должен открываться по адресу http://site.ru/robots.txt.

Директивы robots.txt и правила настройки

User-agent. Это обращение к конкретному роботу поисковой системы или ко всем роботам. Если прописывается конкретное название робота, например «YandexMedia», то общие директивы user-agent не используются для него. Пример написания:

User-agent: YandexBot 
Disallow: /cart
# будет использоваться только основным индексирующим роботом Яндекса

Disallow/Allow. Это запрет/разрешение индексации конкретного документа или разделу. Порядок написания не имеет значения, но при 2 директивах и одинаковом префиксе приоритет отдается «Allow».  Считывает поисковый робот их по длине префикса, от меньшего к большему. Если вам нужно запретить индексацию страницы — просто введи относительный путь до нее (Disallow: /blog/post-1).

User-agent: Yandex
Disallow: /
Allow: /articles
# Запрещаем индексацию сайта, кроме 1 раздела articles

Регулярные выражения с * и $. Звездочка означает любую последовательность символов (в том числе и пустую). Знак доллара означает прерывание. Примеры использования:

Disallow: /page* # запрещает все страницы, конструкции http://site.ru/page
Disallow: /arcticles$ # запрещаем только страницу http://site.ru/articles, разрешая страницы http://site.ru/articles/new

Директива Sitemap. Если вы используете карту сайта (sitemap.xml) – то в robots.txt она должна указываться так:

Sitemap: http://site.ru/sitemap.xml

Директива Host. Как вам известно у сайтов есть зеркала (читаем, Как склеить зеркала сайта). Данное правило указывает поисковому боту на главное зеркало вашего ресурса. Относится к Яндексу. Если у вас зеркало без WWW, то пишем:

Host: site.ru

Crawl-delay. Задает задержу (в секундах) между скачками ботом ваших документов. Прописывается после директив Disallow/Allow.

Crawl-delay: 5 # таймаут в 5 секунд

Clean-param. Указывает поисковому боту, что не нужно скачивать дополнительно дублирующую информацию (идентификаторы сессий, рефереров, пользователей). Прописывать Clean-param следует для динамических страниц:

Clean-param: ref /category/books # указываем, что наша страница основная, а http://site.ru/category/books?ref=yandex.ru&id=1 это та же страница, но с параметрами

Главное правило: robots.txt должен быть написан в нижнем регистре и лежать в корне сайта. Пример структуры файла:

User-agent: Yandex
Disallow: /cart
Allow: /cart/images
Sitemap: http://site.ru/sitemap.xml
Host: site.ru
Crawl-delay: 2

Мета-тег robots и как он прописывается

Данный вариант запрета страниц лучше учитывается поисковой системой Google. Яндекс одинаково хорошо учитывает оба варианта.

Директив у него 2: follow/nofollow и index/noindex. Это разрешение/запрет перехода по ссылкам и разрешение/запрет на индексацию документа. Директивы можно прописывать вместе, смотрим пример ниже.

Для любой отдельной страницы вы можете прописать в теге <head> </head> следующее:

Мета тег Robots

Правильные файлы robots.txt для популярных CMS

Пример Robots.txt для WordPress

Ниже вы можете увидеть мой вариант с данного Seo блога.

User-agent: Yandex
Disallow: /wp-content/uploads/
Allow: /wp-content/uploads/*/*/
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /template.html
Disallow: /cgi-bin
Disallow: /wp-admin
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
Disallow: */feed
Disallow: */comments
Disallow: /tag
Disallow: /archive
Disallow: */trackback/
Disallow: */feed/
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=
Host: romanus.ru

User-agent: *
Disallow: /wp-content/uploads/
Allow: /wp-content/uploads/*/*/
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /template.html
Disallow: /cgi-bin
Disallow: /wp-admin
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
Disallow: */feed
Disallow: */comments
Disallow: /tag
Disallow: /archive
Disallow: */trackback/
Disallow: */feed/
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=
Sitemap: http://romanus.ru/sitemap.xml

Трэкбэки запрещаю потому что это дублирует кусок статьи в комментах. А если трэкбэков много — вы получите кучу одинаковых комментариев.

Служебные папки и файлы любой CMS я стараюсь я закрываю, т.к. не хочу чтобы они попадали в индекс (хотя поисковики уже и так не берут, но хуже не будет).

Фиды (feed) стоит закрывать, т.к. это частичные либо полные дубли страниц.

Теги закрываем, если мы их не используем или нам лень их оптимизировать.

Примеры для других CMS

Чтобы скачать правильный robots для нужной CMS просто кликните по соответствующей ссылке.

Как проверить корректность работы файла

Анализ robots.txt в Яндекс Вебмастере – тут.

Проверка robots.txt в Яндексе

Указываем адрес своего сайта, нажимаем кнопку «Загрузить» (или вписываем его вручную) – бот качает ваш файл. Далее просто указываем нужные нам УРЛы в списке, которые мы хотим проверить и жмем «Проверить».

Смотрим и корректируем, если это нужно.

Популярные вопросы о robots.txt

Как закрыть сайт от индексации?

  • User-agent: Yandex
    Disallow: /
    User-agent: *
    Disallow: /

Как запретить индексацию страницы?

  • User-agent: Yandex
    Disallow: /page.html
    User-agent: *
    Disallow: /page.html

Как запретить индексацию зеркала?

Для магазина стоит закрывать cart (корзину)?

  • Да, я бы закрывал.

У меня сайт без CMS, нужен ли мне robots?

  • Да, чтобы указать Host и Sitemap. Если у вас есть дубли — то исходя из ситуации закрывайте их.
Рекомендованные статьи
Теги статьи: Метки:
  • Добрый день!
    Подскажите, пожалуйста, как можно решить проблему: не знаю, откуда они, но в Гугл.Вебмастере обнаружила странные битые ссылки с 2-мя слешами. Типа https://smpp.com.ua//HTC1

    Можно ли каким-то образом закрыть в robots.txt все линки с двумя слешами подряд? и если да, то как?
    Заранее спасибо!

    • Alona, вам нужно разобраться с источником проблемы. Т.е. откуда они берутся, и исправлять именно это, а не закрывать от индексации.

  • Наталья

    Здравствуйте!

    А почему вы это запретили?

    Disallow: /wp-content/uploads/

    • Наталья, я не люблю когда изображения в индекс попадают.
      Лучше потерять немного мусорного трафика, чем иметь всяческие проблемы 🙂

  • Сергей К.

    Спасибо за ответ, Роман.

  • Здравствуйте, Роман!

    Ещё один вопрос, на который не могу найти ответ. Был бы благодарен за Ваше мнение. Напомню, что мой сайт — не блог, а сайт небольшого агентства недвижимости.

    Сайт на WordPress, подкорректировал robots согласно рекомендациям, а также примерам на различных сайтах. Наряду с прочими директивами имеются и вот эти:
    Disallow: /wp-includes/
    Disallow: /wp-content/plugins/
    Disallow: /wp-content/themes/

    Проверяю мои страницы в webmaster Гугла в разделе «Посмотреть как Googlebot». При таком robors на страницах отображаются только тексты, то есть сайт выглядит как полу-фабрикат. А фотографии, дизайн, элементы оформления, таблицы и т.д. не видны. Указывается, что блокировка этих элементов происходит из-за директив:
    Disallow: /wp-includes/
    Disallow: /wp-content/plugins/
    Disallow: /wp-content/themes/

    В этой связи вопрос. Так и должно быть, что сайт выглядит для поисковиков усеченным? Или всё же он будет понижен в результатах выдачи поисковиков из-за того, что он выглядит в их глазах ущербным? Если последнее верно, то что нужно сделать, чтобы исправить ситуацию?

    Сергей К.

    • Сергей К., добавьте в роботс:
      Allow: /wp-content/uploads/*/*/

      В остальном — ПС смотрят на сайт не так, как обычные пользователи.

  • Сергей К.

    Большое спасибо, Роман, что откликнулись на мою просьбу. Так и сделаю, как Вы советуете.

  • Здравствуйте!

    Спасибо за полезную статью. Теперь знаю, что для моего сайта сделали неправильный файл robots.txt . Поэтому просьба разъяснить следующее:

    1. На сайте с WordPress с ЧПУ мне нужно закрыть от индексации наряду со служебными разделами WP также результаты поиска по сайту и дубли. Если написать в robots.txt эти две директивы:
    Disallow: /?s=
    Disallow: /*?*
    то не будут ли исключены из индекса нужные мне УРЛы, в адресах которых присутствует буква «s» ?

    2. Мой сайт создан не для блога, на нем нет регистрации для посетителей, соответственно нет логин / пароль для входа, нет возможности для комментариев и т.д. В таком случае нужны ли вообще в robots.txt эти директивы во всех вариациях:
    Disallow: /wp-login.php
    Disallow: /wp-register.php
    Disallow: /trackback
    Disallow: /trackback/
    Disallow: */trackback
    Disallow: */trackback/
    Disallow: */*/trackback
    Disallow: /feed/
    Disallow: */*/feed/*/
    Disallow: */feed
    Disallow: /?feed=
    Disallow: /comments/
    Disallow: */comments/

    Если нужны, то какие именно?
    Заранее спасибо.

    • Сергей К., в 1 варианте — буду закрыты маски /?s=, а так же адреса содержащие знак вопроса.
      Буква «s» — закрыта не будет (если до нее не идет ?, а после =)

      2) Если речь идет о WordPress — то можно выкинуть из списка комментарии, остальное оставить.

  • А зачем закрывать от индекса таги?

    • У меня они не используются + в категории идут не уникальные анонсы — потому и закрыл.
      Как только доберусь до их оптимизации — соответственно открою.

  • Алла

    я недавно пыталась его настроить, так и не получилось, здесь нашла все рекомендации и дельные советы, теперь мне действительно намного проще. Думаю даже попробовать составить его для популярных CMS.

  • Костя

    Как же я давно искал такую подробную инструкцию! Столько информации пересмотрел разной, но до кучи ничего собрать не смогл. А тут все по полочкам разложено бери и делай!

  • Кирилл

    Подскажите, а чтобы не запрещать индексацию никаких страниц можно оставить файл пустым? И еще: я указываю в disallow несколько каталогов через пробел, но почему-то запрет не срабатывает. Их обязательно по одному в строчке указывать?

    • Кирилл, чтобы ничего не запрещать — ничего не пишите. Или напишите: Allow: /
      Чтобы запретить несколько каталогов — нужно указывать по 1 в новой строке.

  • den

    Ограничил доступ поисковых ботов к документам и служебным файлам при помощи пошаговой настройки на этом сайте. Спасибо за доступность обьяснений, мне это очень помогло.

  • Оксана

    Я помню тоже, как Татьяна, долго мучалась с Robots.txt для своего блога на WordPress, все-таки я не программист да и вообще тогда была не очень большим знатоком и любителем таких действий, но понимала, что это нужно сделать.Все-таки жизнь заставляет постигать и такие знания. Я помню, что я тогда потратила кучу времени, пока сделала все как нужно, было много проб и ошибок. Но это было уже несколько лет назад, если бы мне тогда вдруг попался бы этот ваш пост, то это очень даже облегчило мои старания. А теперь я наверное сравню наши с вами варианты, возможно даже внесу какие-то изменения в свой файл.

    • Оксана, давайте-давайте.

  • Эмма Букина

    Благодарю за столь подробное описание! По Вашему алгоритму настроила запрет на переход по ссылкам — замечательная вещь! Теперь могу не переживать за безопасность моих трудов.

  • Татьяна

    Хорошо хоть тут все подробно расписано, долго искала как пользоваться ограничителем доступа для ботов. Я новичок в управлении сайтами, а для моего дропшиппинг интернет магазина часто нужно прятать неактуальные файлы. Все время приходится просить помощи у знакомых, которые разбираются в управлении сайтом лучше меня. Недавно вот попробовала сама все сделать. Стало получаться, но пока сама все действия запомнить не могу, поэтому делаю по инструкции из этой статьи. Корректность работы проверила в Вебмастере Яндекс, роботы обходят страницы, которые я указала. Пока я делаю все очень долго, хотелось бы найти более простой способ, но думаю с robots.txt самый надежный.