21.04.2015

Правильная настройка robots.txt для Google и Яндекс

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

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

Перед тем, как приступить к настройке роботса для вашего сайта, советую ознакомиться с официальными рекомендациями Яндекс и Google. Однако, как обычно и бывает, информация там не Правильная настройка robots.txtочень легкая для восприятия, именно поэтому я пишу данный гайд.

Теперь о том, что должно быть в файле robots.txt. По моему мнению, в нем необходимо создавать 3 отдельные наборы директив — для Яндекс, для Google, и для остальных роботов-краулеров. Почему отдельно? Да потому что есть директивы, предназначенные только для определенных ПС, а также можете считать это неким проявлением уважения к основным поисковикам рунета 🙂

Следовательно, роботс должен состоять из таких секций:

Между наборами директив для разных роботов необходимо оставлять пустую строку. 

В robots.txt необходимо указать путь к XML карте сайта. Директива является межсекционной, поэтому она может быть размещена в любом месте файла, однако перед ней рекомендуется вставить пустой перевод строки. Запись должна выглядеть так:

Адрес сайта и сам путь к карте необходимо заменить на те, которые являются актуальными для вашего сайта. Также следует помнить, что для сайтов с большим количеством страниц (более 50 000) необходимо создать несколько карт и все их прописать в роботсе.

Настройка robots.txt для Яндекс

Для того, чтобы наглядно показать правильную настройку директив для Яши, я возьму в качестве примера стандартный robots.txt для WordPress. 

Обратите внимание на директиву Host. Она указывает пауку-роботу Яндекса, какое из зеркал сайта является главным. Наиболее распространенная группа зеркал — site.com и www.site.com. Тут есть еще один тонкий нюанс, о котором редко упоминают. Дело в том, что директива Host не является прямой командой роботам считать зеркало главным. Сначала Яндекс должен найти и идентифицировать сайты именно как зеркала, и только тогда данная директива сработает. Тем не менее, прописывать Host рекомендую в любом случае.

Проверить корректность настройки  robots.txt для Яндекса можно при помощи данного сервиса.

Настройка robots.txt для Google

Для Google настройка роботса мало чем отличается от уже написанного выше. Однако, есть пара моментов, на которые следует обратить внимание.

Как видно из примера, отсутствует директива Host — она распознается исключительно ботами Яндекса. Кроме этого, появились две директивы, разрешающие индексировать JS скрипты и CSS таблицы. Это связано с рекомендацией Google, в которой говорится, что следует разрешать роботу индексировать
файлы шаблона (темы) сайта. Естественно, скрипты и таблицы в поиск не попадут, однако это позволит роботам корректнее индексировать сайт и отображать его в результатах выдачи. Данные директивы я внедрил не на один десяток сайтов и по крайней мере, лишние страницы в выдаче не появились.

Ну а корректность настройки директив для Google вы можете проверить инструментом проверки файла robots.txt, который находится в Google Webmaster Tools.

Что еще стоит закрывать в роботсе?

Конечно, статья была бы далеко не полной, если бы я не рассказал, какие файлы и папки следует закрывать от индексирования.

  1. Страницы поиска. Тут кое-кто может поспорить, так как бывают случаи, когда на сайте используют внутренний поиск именно для создания релевантных страниц. Однако, так поступают далеко не всегда и в большинстве случаев открытые результаты поиска могут наплодить невероятное количество дублей. Поэтому мой вердикт — закрыть.
  2. Корзина и страница оформления/подтверждения заказа. Данная рекомендация актуальна для интернет-магазинов и других коммерческих сайтов, где есть форма заказа. Данные страницы ни в коем случае не должны попадать в индекс ПС.
  3. Страницы пагинации. Обычно для таких страниц автоматически прописываются одинаковые  мета-теги плюс на них размещен динамический контент, что приводит к дублям в выдаче. Поэтому пагинацию необходимо закрывать от индексации.
  4. Фильтры и сравнение товаров. Рекомендация относится к интернет-магазинам и сайтам-каталогам. 
  5. Страницы регистрации и авторизации. Информация, которая вводится при регистрации или входе на сайт, является конфиденциальной. Поэтому следует избегать индексации подобных страниц, Google это оценит.
  6. Системные каталоги и файлы. Каждый сайт состоит из множества данных — скриптов, таблиц CSS, административной части. Такие файлы следует также ограничить для просмотра роботам.

Замечу, что для выполнения некоторых из вышеописанных пунктов можно использовать и другие инструменты, например, rel=canonical, про который я позже напишу в отдельной статье.

Мой вариант  robots.txt для WordPress и Joomla

Дописываю эти строки спустя какое-то время после написания статьи. Дело в том, что несмотря на пользу различных директив и объяснении мною их функций, я забыл добавить информацию о том, как должен выглядеть роботс в конечном итоге. Поэтому добавляю мои наборы директив для двух моих любимых и часто используемых CMS — WordPress и Joomla. Естественно, не забывайте, что некоторые параметры вам понадобится дописать самим, поэтому обязательно ознакомьтесь с рекомендациями Google и Яндекс (ссылки на оф. источники во втором абзаце данной статьи).

robots.txt для WordPress

 

Обратите внимание, что директивы Sitemap и Host в вашем роботсе нужно заменить на необходимые вам.

robots.txt для Joomla

Замечу, что в наборе поисковых правил для Joomla я закрыл пагинацию страниц в разделах, а также страницу поиска по сайту. Если вам необходимы данные страницы в поиске — можете убрать из robots.txt эти две строчки:

Немного о нестандартном использовании robots.txt

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

Но есть и другое применение. Например, после знака комментария, вы можете разместить полезную информацию: контакты сайта, вакансию для оптимизатора, ссылку на важную информацию, и даже рекламу. Не буду заниматься плагиатом, так как идея не моя, поэтому предлагаю ознакомиться с различными вариантами на блоге Devaka. Уверен, вы будете удивлены, узнав, насколько разнообразным может быть использование роботса не по назначению.

На этом все, правильная настройка robots.txt описана в полной мере, надеюсь, вы узнали что-то новое. Если же после прочтения статьи у вас остались вопросы — задавайте их в комментариях, и я постараюсь на них ответить.

Просмотров записи: 29078
Проблемы с продвижением? Закажите экспресс-аудит по антикризисной цене!
  • Спасибо за познавательную статью. Подскажите, а нет проблем с русскоязычными доменами и урлами?

    • Ярослав

      Очень актуальный вопрос! В роботсе нельзя использовать кириллические символы в директивах, вот инфа Яндекса по данному поводу: https://help.yandex.ru/webmaster/yandex-indexing/cyrillic-urls.xml

      • А если нужно запретить индексацию папки с русским названием, как её запретить?

        • Ярослав

          Перед этим ее нужно конвертировать в шестнадцатеричный код.

  • Надежда

    Я у себя убрала /wp-content/themes, зачем запрещать шаблон? Гугл ругался, что нет мобильной версии, хотя она была, убрала этот запрет, написал все ок

  • Вика

    Ярослав, подскажите, пожалуйста по следующему вопросу. Мой сайт не оптимизирован для мобильных устройств. Многие советуют открыть в файле robots папку с темой themes, мол после этого Гугл воспринимает сайт, как удобный для просмотра.
    Если папка раньше была закрыта, а теперь я открою, не возникнут ли дубли страниц?

    • Ярослав

      Вика, если у вас шаблон не адаптивный, разрешение индексирования темы ничего не изменит.
      А по поводу дублирования — страницы шаблона не попадут в индекс Гугла и Яндекса, даже если открыть весь сайт, так что тут на любителя. Мне нравится, когда все выстроено логично, поэтому закрываю все, кроме нужных гуглу JS, CSS. Ну и еще (для любителей открывать весь сайт) — ресурсы краулеров ограничены, зачем тратить их драгоценное время на сканирование файлов, которые все равно не попадут в индекс?

      • Вика

        Спасибо за ответ, Ярослав)))

      • Александр

        Ярослав, в продолжение разговора хочу спросить.
        Гугл недавно многим вебмастерам разослал письма с рекомендациями открыть некоторые области сайта для их бота. Мне в частности рекомендовал открыть доступ к нескольким плагинам и парочке тем. Если следовать этой рекомендации, то мне придется убирать в роботсе запрет со всех плагинов и тем — не приведет ли это к «дублям»? Может стоит воздержаться от выполнения таких рекомендаций?

  • На своем опыте убедилась о новшествах при настройке robots.txt, особенно для Google. Перелопатила огромное количество материала в интернете о нововведении в файл robots.txt. С горем пополам решила для себя открыть для поисковиков JS скрипты и CSS таблицы. Сравнив результаты до и после, о том как видит поисковый бот мой сайт, результат конечно впечатляющий. Жаль не нашла ваш сайт и эту статью раньше.

  • Наконец-то нашлась статья, как запустить файл robots . Постепенно, шаг за шагом будем применять изложенные советы на практике. Все гениальное — просто. Терпение, и все получится. Спасибо за вашу статью.

  • Огромное спасибо за материал! Только что по вашей инструкции настроила роботс. Хорошо, что в комментариях прочитала про кириллицу, поскольку одна страница у меня-таки имеет кириллический урл. Ну что же делать, убрала ее и роботса. Пожалуй, положу-ка я ваш сайт в закладки — столько полезной и главное, написанной доступным языком информации не ни на одном подобном ресурсе. Респект!

  • Ярослав, здравствуйте. Я опять к Вам за помощью. Открыла в роботс теги, категории и page, в результате в индексе появилась 571 страница вместо 176 прежних. Подскажите, это нормально?

    • Здравствуйте, Виктория.
      Да, если вы открыли для индексации теги, категории и прочее — вполне закономерно, что страниц в индексе стало больше.

  • Привет! Читал вашу статью (правильная настройка robots.txt для Google и Яндекс). Теперь буду пробовать на своем сайте wordpress-live ru. Много я перелопатил статей по составлению файла robots.txt — сравнив результаты после и до, как видит поисковый бот мой сайт, результат конечно впечатляющий.

    вот ответ нашел на вашем сайте. Спасибо.

  • Влад

    В роботе для вордпресс вы не закрыли теги, как думаете не будет много дублей, вид яндекс их не любить,

  • Виталий

    Нужная статья для начинающих вебмастеров. Помню, как я на одном из своих сайтов не закрыл страницы пагинации от индексации. Потом долго мучился с ответом на вопрос: откуда пессимизация от Яндекса 🙂 За добавление Allow в часть роботса для Google-спасибо, сейчас займусь.

  • trushenk-точка-com

    Толковый файл robots.txt. Помог подружить гуглбот с адаптивным дизайном темы. Что бы не открывать всю папку с темой, просто разрешил доступ к некоторым файлам:
    Allow: *.css
    Allow: *.js
    Allow: /wp-includes/*.js
    Гугл перестал ругаться. Спасибо.

  • Максим

    А для яндекса точно не нужно открывать доступ к скриптам как для гугла?

  • Ярослав

    Пока что не нужно. Хотя даже если откроете, скорее всего, ничего не поменяется — в выдачу яндекс скрипты не добавит.

  • Сергей

    Почему имена запрещенных на индексацию папок повторяются три раза? А в общей директиве для всех ботов нельзя оставить?

    • Потому что нужно придерживаться правил и логики создания robots.txt. Если в юзер-агенте секции директив указывается конкретный бот, то соответствующий краулер будет обращаться только к этому боту, игнорируя остальные инструкции.

  • CM Group

    Есть robots.txt Для wix.com? очень очень надо(((

  • Лидия

    В 2016 году, в декабре перевела мой сайт на протокол SSL: https. мой сайт стал резко падать, так как я поменяла фактически адрес сайта, в Яндекс вебмастере поменяла адрес и проблем не было, а вот в Гугл вебмастере увидела катастрофу! Блокировал страницы — причина — robots.txt! По Вашим рекомендациям добавила раздел robots.txt для Googlebot, надеюсь на улучшение индексации сайта!

  • Спасибо за статью! Есть пару вопросов по теме…

    Мне нужно к примеру в роботс закрыть:
    Disallow: /*?sort=
    Disallow: /*&sort=
    Disallow: /*?limit=
    Disallow: /*&limit=
    Disallow: /*?order=
    Disallow: /*&order
    Disallow: /*?mfp=
    Disallow: /*?filter_name=
    Disallow: /*&filter_name=
    Disallow: /*?filter_sub_category=
    Disallow: /*&filter_sub_category=
    Disallow: /*?filter_description=
    Disallow: /*&filter_description=
    Disallow: /*?tracking=
    Disallow: /*&tracking=
    Disallow: /*?manufacturer=
    Disallow: /*&manufacturer=

    Можно ли например все это не прописывать а прописать просто:
    Disallow: /*?
    Disallow: /*&

    B и еще сразу второй вопрос в чем отличие этих запрещающих директив:

    Disallow: /*?manufacturer
    Disallow: /*/*?manufacturer
    Disallow: /*/?manufacturer

  • Иван

    Добрый день! При проверке Роботса
    Host: lada-stroy.ru
    пишет » синтаксис является недопустимым для robots.txt.»

  • Вика Чернышова

    Доброго времени суток. Уже который день подряд не могу понять, почему яндекс вебмастер показывает вот такую штуку
    https://uploads.disquscdn.com/images/74c19609fcb394f5da1db59c0fbe9f8d684d823af78822218f2d45e313cc5a00.png
    Мол весь сайт закрыт от индекса, хотя в самом файле robots.txt кажется проблем нет. Помогите советом, сайт молодой, да и я новичок в этом деле. https://uploads.disquscdn.com/images/497b88b7e42a449f8cbf8f8b8acd4fb62fa5b9620ce491ce3923e4a3e2c28b41.png Как же мне его таки открыть для индексации?

    • Здравствуйте! Насколько сайт молодой?
      Я догадываюсь, что сайт был закрыт от индексации при разработке, а сейчас вы сняли запрещающую директиву. Если верно — то это нормально, может пройти 2-3 апа, или даже больше, пока попадет новый сайт в выдачу.

      • Вика Чернышова

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

        • Возможно, у вас сайт закрыт не в роботсе, а мета-тегом, нужно в исходном коде страниц поискать. Пару десятков статей не надо, а вот правильная структура и базовая техническая оптимизация должны присутствовать, чтобы все индексировалось корректно.

          • Вика Чернышова

            Я вас поняла. Спасибо за совет, буду искать.

  • Здравствуйте. Как указать разные sitemap яндексу и гуглу? В robots.txt это межсекционная директива, а яндексу не нравятся тэги xhtml:link, которые прописаны для гугла

    • Здравствуйте! Вам лучше добавить разные роботсы в панель яндекса и консоль гугла. А в роботсе прописать общую карту.

      • Ни в яндексе, ни в гугле, я не нашел возможности указать другой файл robots, кроме как robots.txt в корневой папке сайта

        • Опечатка вышла) Прочитайте сейчас.