Андрей Смирнов
Время чтения: ~24 мин.
Просмотров: 22

Правильный Robots.txt для WordPress 2020 — подробная настройка

Как влияет robots.txt на индексацию сайта

Поисковые роботы будут индексировать ваш сайт независимо от наличия файла robots.txt. Если же такой файл существует, то роботы могут руководствоваться правилами, которые в этом файле прописываются. При этом некоторые роботы могут игнорировать те или иные правила, либо некоторые правила могут быть специфичными только для некоторых ботов. В частности, GoogleBot не использует директиву Host и Crawl-Delay, YandexNews с недавних пор стал игнорировать директиву Crawl-Delay, а YandexDirect и YandexVideoParser игнорируют более общие директивы в роботсе (но руководствуются теми, которые указаны специально для них).

Подробнее об исключениях:Исключения ЯндексаСтандарт исключений для роботов (Википедия)

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

primer_raboti_robots.jpg

К таким ненужным страницам относятся скрипты ajax, json, отвечающие за всплывающие формы, баннеры, вывод каптчи и т.д., формы заказа и корзина со всеми шагами оформления покупки, функционал поиска, личный кабинет, админка.

Для большинства роботов также желательно отключить индексацию всех JS и CSS. Но для GoogleBot и Yandex такие файлы нужно оставить для индексирования, так как они используются поисковыми системами для анализа удобства сайта и его ранжирования (пруф Google, пруф Яндекс).

Директивы robots.txt

Директивы — это правила для роботов. Есть спецификация W3C от 30 января 1994 года и расширенный стандарт от 1996 года. Однако не все поисковые системы и роботы поддерживают те или иные директивы. В связи с этим для нас полезнее будет знать не стандарт, а то, как руководствуются теми или иными директивы основные роботы.

Давайте рассмотрим по порядку.

User-agent

Это самая главная директива, определяющая для каких роботов далее следуют правила.

Для всех роботов:User-agent: *

Для конкретного бота:User-agent: GoogleBot

Обратите внимание, что в robots.txt не важен регистр символов. Т.е. юзер-агент для гугла можно с таким же успехом записать соледующим образом:user-agent: googlebot

Ниже приведена таблица основных юзер-агентов различных поисковых систем.

Бот Функция
Google
Googlebot основной индексирующий робот Google
Googlebot-News Google Новости
Googlebot-Image Google Картинки
Googlebot-Video видео
Mediapartners-Google Google AdSense, Google Mobile AdSense
Mediapartners Google AdSense, Google Mobile AdSense
AdsBot-Google проверка качества целевой страницы
AdsBot-Google-Mobile-Apps Робот Google для приложений
Яндекс
YandexBot основной индексирующий робот Яндекса
YandexImages Яндекс.Картинки
YandexVideo Яндекс.Видео
YandexMedia мультимедийные данные
YandexBlogs робот поиска по блогам
YandexAddurl робот, обращающийся к странице при добавлении ее через форму «Добавить URL»
YandexFavicons робот, индексирующий пиктограммы сайтов (favicons)
YandexDirect Яндекс.Директ
YandexMetrika Яндекс.Метрика
YandexCatalog Яндекс.Каталог
YandexNews Яндекс.Новости
YandexImageResizer робот мобильных сервисов
Bing
Bingbot основной индексирующий робот Bing
Yahoo!
Slurp основной индексирующий робот Yahoo!
Mail.Ru
Mail.Ru основной индексирующий робот Mail.Ru
Rambler
StackRambler Ранее основной индексирующий робот Rambler. Однако с 23.06.11 Rambler перестает поддерживать собственную поисковую систему и теперь использует на своих сервисах технологию Яндекса. Более не актуально.

Disallow и Allow

Но здесь не все так просто.

Во-первых, нужно знать дополнительные операторы и понимать, как они используются — это *, $ и #.

Примеры использования:

Disallow: *?s= Disallow: /category/$

Allow: *.css Disallow: /template/

Если нужно, чтобы все файлы .css были открыты для индексирования придется это дополнительно прописать для каждой из закрытых папок. В нашем случае:

Allow: *.css Allow: /template/*.css Disallow: /template/

Повторюсь, порядок директив не важен.

Sitemap

Директива для указания пути к XML-файлу Sitemap. URL-адрес прописывается так же, как в адресной строке.

Например,

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

Директива Sitemap указывается в любом месте файла robots.txt без привязки к конкретному user-agent. Можно указать несколько правил Sitemap.

Host

Пример 1:Host: site.ru

Пример 2:Host: https://site.ru

Crawl-delay

Директива для установления интервала времени между скачиванием роботом страниц сайта. Поддерживается роботами Яндекса, Mail.Ru, Bing, Yahoo. Значение может устанавливаться в целых или дробных единицах (разделитель — точка), время в секундах.

Пример 1:Crawl-delay: 3

Пример 2:Crawl-delay: 0.5

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

Чем больше значение, тем меньше страниц робот загрузит за одну сессию. Оптимальное значение определяется индивидуально для каждого сайта. Лучше начинать с не очень больших значений — 0.1, 0.2, 0.5 — и постепенно их увеличивать. Для роботов поисковых систем, имеющих меньшее значение для результатов продвижения, таких как Mail.Ru, Bing и Yahoo можно изначально установить бо́льшие значения, чем для роботов Яндекса.

Clean-param

Это правило сообщает краулеру, что URL-адреса с указанными параметрами не нужно индексировать. Для правила указывается два аргумента: параметр и URL раздела. Директива поддерживается Яндексом.

Пример 1:

Clean-param: author_id http://site.ru/articles/

http://site.ru/articles/?author_id=267539 — индексироваться не будет

Пример 2:

Clean-param: author_id&sid http://site.ru/articles/

http://site.ru/articles/?author_id=267539&sid=0995823627 — индексироваться не будет

Яндекс также рекомендует использовать эту директиву для того, чтобы не учитывались UTM-метки и идентификаторы сессий. Пример:

Clean-Param: utm_source&utm_medium&utm_campaign

Другие параметры

В расширенной спецификации robots.txt можно найти еще параметры Request-rate и Visit-time. Однако они на данный момент не поддерживаются ведущими поисковыми системами.

Закрывающий robots.txt

Если вам нужно настроить, чтобы ваш сайт НЕ индексировался поисковыми роботами, то вам нужно прописать следующие директивы:

User-agent: * Disallow: /

Проверьте, чтобы на тестовых площадках вашего сайта были прописаны эти директивы.

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

ok.pngДля России и стран СНГ, где доля Яндекса ощутима, следует прописывать директивы для всех роботов и отдельно для Яндекса и Google.

Чтобы правильно настроить robots.txt воспользуйтесь следующим алгоритмом:

  1. Закройте от индексирования админку сайта
  2. Закройте от индексирования личный кабинет, авторизацию, регистрацию
  3. Закройте от индексирования корзину, формы заказа, данные по доставке и заказам
  4. Закройте от индексирования ajax, json-скрипты
  5. Закройте от индексирования папку cgi
  6. Закройте от индексирования плагины, темы оформления, js, css для всех роботов, кроме Яндекса и Google
  7. Закройте от индексирования функционал поиска
  8. Закройте от индексирования служебные разделы, которые не несут никакой ценности для сайта в поиске (ошибка 404, список авторов)
  9. Закройте от индексирования технические дубли страниц, а также страницы, на которых весь контент в том или ином виде продублирован с других страниц (календари, архивы, RSS)
  10. Закройте от индексирования страницы с параметрами фильтров, сортировки, сравнения
  11. Закройте от индексирования страницы с параметрами UTM-меток и сессий
  12. Проверьте, что проиндексировано Яндексом и Google с помощью параметра «site:» (в поисковой строке наберите «site:site.ru»). Если в поиске присутствуют страницы, которые также нужно закрыть от индексации, добавьте их в robots.txt
  13. Укажите Sitemap и Host
  14. По необходимости пропишите Crawl-Delay и Clean-Param
  15. Проверьте корректность robots.txt через инструменты Google и Яндекса (описано ниже)
  16. Через 2 недели перепроверьте, появились ли в поисковой выдаче новые страницы, которые не должны индексироваться. В случае необходимости повторить выше перечисленные шаги.

Пример robots.txt

# Пример файла robots.txt для настройки гипотетического сайта https://site.ru  User-agent: *  Disallow: /admin/  Disallow: /plugins/  Disallow: /search/  Disallow: /cart/  Disallow: */?s=  Disallow: *sort=  Disallow: *view=  Disallow: *utm=  Crawl-Delay: 5    User-agent: GoogleBot  Disallow: /admin/  Disallow: /plugins/  Disallow: /search/  Disallow: /cart/  Disallow: */?s=  Disallow: *sort=  Disallow: *view=  Disallow: *utm=  Allow: /plugins/*.css  Allow: /plugins/*.js  Allow: /plugins/*.png  Allow: /plugins/*.jpg  Allow: /plugins/*.gif    User-agent: Yandex  Disallow: /admin/  Disallow: /plugins/  Disallow: /search/  Disallow: /cart/  Disallow: */?s=  Disallow: *sort=  Disallow: *view=  Allow: /plugins/*.css  Allow: /plugins/*.js  Allow: /plugins/*.png  Allow: /plugins/*.jpg  Allow: /plugins/*.gif  Clean-Param: utm_source&utm_medium&utm_campaign  Crawl-Delay: 0.5    Sitemap: https://site.ru/sitemap.xml  Host: https://site.ru

Как добавить и где находится robots.txt

После того как вы создали файл robots.txt, его необходимо разместить на вашем сайте по адресу site.ru/robots.txt — т.е. в корневом каталоге. Поисковый робот всегда обращается к файлу по URL /robots.txt

Как проверить robots.txt

Проверка robots.txt осуществляется по следующим ссылкам:

  • В Яндекс.Вебмастере — на вкладке Инструменты>Анализ robots.txt
  • В Google Search Console — на вкладке Сканирование>Инструмент проверки файла robots.txt

Типичные ошибки в robots.txt

error.pngВ конце статьи приведу несколько типичных ошибок файла robots.txt

  • robots.txt отсутствует
  • в robots.txt сайт закрыт от индексирования (Disallow: /)
  • в файле присутствуют лишь самые основные директивы, нет детальной проработки файла
  • в файле не закрыты от индексирования страницы с UTM-метками и идентификаторами сессий
  • директива Host прописана несколько раз
  • в Host не указан протокол https
  • путь к Sitemap указан неверно, либо указан неверный протокол или зеркало сайта

P.S.

Если у вас есть дополнения к статье или вопросы, пишите ниже в комментариях. Если у вас сайт на CMS WordPress, вам будет полезна статья «Как настроить правильный robots.txt для WordPress».

P.S.2

Полезное видео от Яндекса (Внимание! Некоторые рекомендации подходят только для Яндекса).

Что такое robots.txt и для чего он нужен? Как правильно настроить robots.txt для SEO-оптимизации вашего сайта? Полный разбор структуры, правил и директив, используемых в robots.txt, который заставит поисковые системы полюбить ваш ресурс!

Что такое robots.txt и для чего он нужен

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

Robots.txt является первым файлом, к которому обращаются поисковые системы, чтобы понять, можно ли индексировать сайт. Данный файл располагается в корневой директории сайта и должен быть доступен в браузере по ссылке вида naked-seo.ru/robots.txt.

Давайте рассмотрим самый простой пример содержимого robots.txt, которое разрешает поисковым системам индексировать все разделы сайта:

User-agent: * Allow: /

Данная инструкция дословно говорит: всем роботам, читающим данную инструкцию (User-agent: *) разрешаю индексировать весь сайт (Allow: /).

robots-txt-1.pngЗачем все эти сложности с инструкциями для роботов, и почему нельзя открывать сайт для индексации полностью?

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

Если помимо страниц, которые содержат полезный контент, и которые по задумке владельца сайта должны участвовать в выдаче, роботу придется просматривать еще кучу технических страниц, которые не представляют никакой ценности для пользователей, его ресурсы будут тратиться впустую. Вы только представьте, что только один единственный сайт может генерировать тысячи страниц результатов поиска по сайту, дублирующихся страниц или страниц, не содержащих контента вообще. А если этот объем масштабировать на всю сеть, то получатся гигантские цифры и соответствующие ресурсы, которые необходимо тратить поисковикам.

Наличие огромного количества бесполезного контента на вашем сайте может негативно сказаться на его представлении в поиске. Как бы вы отнеслись к человеку, который дал вам мешок орехов, но внутри оказалась только скорлупа и всего 2-3 орешка? Не трудно представить и позицию поисковиков при аналогии данной ситуации с вашим сайтом.

Кроме того, существует такое понятие, как краулинговый бюджет. Условно, это объем страниц, который может участвовать в поисковой выдаче от одного сайта. Этот объем, естественно, ограничен, но по мере роста проекта и повышения его качества, краулинговый бюджет может увеличиваться, но сейчас не об этом. Главное идея в том, в выдаче должны участвовать только страницы, которые содержат полезный контент, а весь технический «мусор» не должен засорять выдачу поисковым спамом.

Как создать файл robots.txt на своем сайте?

Для того, чтобы создать файл robots.txt, вам нужно открыть любой текстовый редактор, например, Блокнот, MS Word, SublimeText, NotePad++ и т.п. Прописать необходимые инструкции для вашего сайта и сохранить файл в формате .txt.

Далее данный файл необходимо загрузить в корневую директорию вашего сайта. Корневая директория, это папка, как правило, с названием вашего сайта в которой находятся файлы вашей  CMS и индексный файл index.html. Загрузить файл robotx.txt на сервер можно с помощью панели управления сервером (напр. ISPmanager, Cpannel), с помощью FTP-клиента (напр. FileZilla, TotalCommander), через консоль, либо через административную панель сайта, если CMS позволяет это сделать.

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

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

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

Правильная структура robots.txt

Давайте рассмотрим сокращенный шаблон структуры robots.txt типичного сайта:

User-agent: Yandex Disallow: /admin Disallow: *?s= Disallow: *?p= User-agent: Googlebot Disallow: /admin Disallow: *?s= Disallow: *?p=  User-agent: * Disallow: /admin Disallow: *?s= Disallow: *?p= Sitemap: https://site.ru/sitemap.xml

Как вы видите, файл robots.txt состоит из блоков с инструкциями. Начинается он с директивы User-agent, которая указывает для какого именно робота будут прописаны нижеследующие инструкции.

Примеры директив User-agent для разных поисковых роботов:

# Для всех роботов User-agent: *  # Для роботов Яндекса User-agent: Yandex  # Для всех роботов Google User-agent: Googlebot

Как правило, в большинстве файлов robots.txt используются 3 вышеперечисленных директивы User-agent, однако, существуют отдельные директивы, например, для роботов индексирующих изображения на сайте (YandexImages и Googlebot-Image), в которых можно прописать отдельные инструкции. Например:

#Разрешаем роботу Яндекса индексацию всего сайта User-agent: Yandex Allow: /  #Разрешаем роботу Google индексацию всего сайта User-agent: Googlebot Allow: /  #Запрещаем индексацию сайта всем остальным роботам User-agent: * Disallow: /

После каждой директивы User-agent идут непосредственные команды для каждого поискового робота. В большинстве случаев используются команды Disallow и Allow. Команда Disallow запрещает роботам индексирование определенных страниц, команда Allow, наоборот, разрешает.

Также в структуре присутствуют 2 обязательных директорий: Host и Sitemap. Директива Host указывает на главное зеркало сайта (УСТАРЕЛО — https://yandex.ru/blog/platon/pereezd-sayta-posle-otkaza-ot-direktivy-host), директива Sitemap указывает на xml карту сайта. Более подробно мы рассмотрим каждую директорию и возможности их применения далее. А сейчас остановимся на синтаксисе и правилах составления robots.txt.

Синтаксис и правила настройки robots.txt

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

  1. По-умолчанию robots.txt разрешает индексировать все. Данное правило работает при отсутствии robots.txt на сервере, при пустом содержимом файла, при слишком большом файле размером более 32 кб, при недоступности файла (напр. код ответа 404);
  2. Название файла «robots.txt». Не допускается использование заглавных букв. Имя файла пишется на латинице;
  3. Каждая директива в файле начинается с новой строки. Не указывайте более одной инструкции в строке;
  4. Пробел как знак в robots.txt не имеет значения. Нет никакой разницы в количестве пробелов и их месте в файле, однако, составляйте robots.txt таким образом, чтобы вам самим было легко в нем ориентироваться;
  5. Инструкция не имеет закрывающих символов. В конце директивы не нужно ставить точку или точку с запятой;
  6. Допускается комментирование в файле. Это необходимо для удобства оптимизатора, чтоб тот мог оставлять информацию, объясняющую для чего он открыл/закрыл от индексации определенные страницы. Комментарий начинается со знака #;
  7. Пустой перенос строки используется только в конце директивы User-agent. В соответствие со стандартом пустой перенос строки может трактоваться как окончание инструкций по конкретному User-agent. Также использование нового User-aget без переноса строки может игнорироваться;
  8. В строке с директивой указывается только 1 параметр. Все последующие параметры прописываются с новой строки с указанием директивы.
  9. Названия директив пишутся на с заглавной буквы на латинице. Например, правильно «Dissalow», а не «DISALLOW»;
  10. Символ / используется при написании статических страниц. Например, «Disallow: /wp-admin» запрещает индексацию административной панели WordPress по данному адресу.
  11. Последовательность директив. Порядок следования директив в User-aget не влияет на их использование поисковым роботом. При конфликте инструкций Disallow и Allow предпочтение отдается директиве Allow.

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

Использование спецсимволов * и $ в robots.txt

При использовании директив Allow и Disallow в их параметрах можно использовать специальные символы * и $. Спецсимвол * означает любую последовательность символов в параметре. Например:

User-agent: * Disallow: /wp-content/*.txt #Зпрещает индексирование /wp-content/test.txt и wp-conten/upload/readme.txt и т.д. Disallow: /*blog #Зпрещает индексирование /blog и /main/blog и т.д. Disallow: *?p= #Зпрещает индексирование страниц пагинации на всем сайте

По-умолчанию на конце каждого параметра используется спецсимвол *. В свою очередь спецсимвол $ позволяет уточнить параметры индексирования. Например:

User-agent: * Disallow: /blog #Зпрещает индексирование /blog и /blog/h1 и т.д. Disallow: /blog$ #Зпрещает индексирование /blog, но разрешает /blog.html и /blog/h1 и т.д.

Запрет индексации в файле robots.txt — Disallow

Disallow — наиболее часто используемая директива в robots.txt. В ней необходимо указывать:

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

Разрешить индексацию robots.txt — Allow

Allow — это директива разрешающая поисковому роботу обход страниц. Она является противоположностью директиве Disallow. В ней, как и в Disallow возможно использование спецсимволов * и $.

Давайте рассмотрим пример использования директивы Allow:

User-agent: *  Disallow: / Allow: /blog

Данные инструкции разрешают обход раздела /blog, при этом весь остальной сайт остается недоступен для индексирования.

Пустой «Disallow: » = «Allow: /». Обе директивы разрешают полный обход сайтаПустой «Allow: » = «Disallow: /». Обе директивы полностью запрещают обход сайта.Эта информация дана для справки. Широкого практического применения она не получает.

Главное зеркало сайта в robots.txt — Host

С марта 2018 года Яндекс отказался от директивы Host. Ее функции полностью перешли на раздел «Переезд сайта в Вебмастере» и 301-редирект.

Директива Host указывала поисковому роботу Яндекса на главное зеркало сайта. Если ваш сайт был доступен по нескольким разным адресам, например, с www и без www, вам необходимо было настроить 301 редирект на главный адрес и указать его в директиве Host.

Данная директива была полезна при установке SSL-сертификата и переезде сайта с http на https. В директиве Host адрес сайта при наличии SSL-сертификата указывался с https.

Директива Host указывалась в User-agent: Yandex только 1 раз. Например для нашего сайта это выглядело вот так:

User-agent: Yandex  Host: https://naked-seo.ru

В данном примере указано, что главным зеркалом сайта Naked SEO является ни www.naked-seo.ru, ни http://naked-seo.ru, а https://naked-seo.ru.

Карта сайта в robots.txt — Sitemap.xml

Директива Sitemap указывает поисковым роботам путь на xml карту сайта. Этот файл невероятно важен для поисковых систем, так как при обходе сайта они, в первую очередь, обращаются к нему. В данном файле представлена структура сайта со всем внутренними ссылками, датами создания страниц, приоритетами индексирования.

Пример robots.txt с указанием адреса карты сайта на нашем сайте:

User-agent: *  Sitemap: https://naked-seo.ru/sitemal.xml

Директива Clean-param в robots.txt

Директива Clean-param позволяет запретить поисковым роботом обход страниц с динамическими параметрами, контент которых не отличается от основной страницы. Например, многие интернет-магазины используют параметры в url-адресах, которые передают данные по источникам сессий, а также персональные идентификаторы пользователей.

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

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

https://naked-seo.ru/books/get_book.pl?userID=1&source=site_1&book_id=3 https://naked-seo.ru/books/get_book.pl?userID=2&source=site_2&book_id=3 https://naked-seo.ru/books/get_book.pl?userID=3&source=site_3&book_id=3

Параметр userID, который содержится в каждом url-адресе показывает персональный идентификатор пользователя, а параметр source показывает источник, из которого посетитель попал к нам на сайт. По трем разным url-адресам пользователи видят один и тот же контент book_id=3. В данном случае нам необходимо использовать директиву Clean-param следующим образом:

User-agent: Yandex Clean-param: userID /books/get_book.pl Clean-param: source /books/get_book.pl

Данные директивы помогут поисковому роботу Яндекса свести все динамические параметры в единую страницу:

https://naked-seo.ru/books/get_book.pl?&book_id=3

Директива Crawl-delay в robots.txt

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

Пример использования директивы:

User-agent: Yandex Crawl-delay: 2 #создает тайм-аут в 2 секунды

Комментарии в robots.txt

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

В данной статье вы уже встречались с комментирование, которое поясняло использование директив. Вот еще один пример:

Как проверить robots.txt?

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

Как проверить robots.txt на сайте?

Если вы все сделали правильно, и загрузили данный файл в корень вашего сервера, то он станет доступен по ссылке вида site.ru/robots.txt. Данный файл, как мы уже говорили, является публичным. Поэтому вы можете посмотреть и проанализировать robots.txt абсолютно у любого сайта.

Как проверить robots.txt на наличие ошибок

Вы можете проверить robots.txt на наличие ошибок:

В панели Вебмастера Яндекс — https://webmaster.yandex.ru/tools/robotstxt/

И в Google Search Console — https://www.google.com/webmasters/tools/robots-testing-tool

Robots.txt в Яндекс и Google

У большинства оптимизаторов, которые первый раз сталкиваются с файлом robots.txt возникает вполне закономерный вопрос: «Почему нельзя указать User-agent: * и не прописывать для каждого робота одинаковые правила?». Конечно, так сделать можно, но возникает неопределенность. Во-первых, только Яндекс поддерживает директиву Host, которая указывает на главное зеркало сайта. Использование данной директивы для всех роботов бессмысленно (УСТАРЕЛО — https://yandex.ru/blog/platon/pereezd-sayta-posle-otkaza-ot-direktivy-host). Во-вторых, существует субъективное мнение, что поисковые системы Яндекс и Google приветствуют указание именно их робота в User-agent, а не использование директивы общего плана.

Заключение: советы Вебмастерам

Совет #1

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

Если файл robots.txt не запрещает индексирование сайта, проверьте содержимое мета-тегов в head вашего сайта, адресованных поисковым роботам. Обратите внимание на наличие на вашем сайте следующих тегов:

Наличие данных тегов может негативно повлиять на представление вашего сайта в поисковых системах.

Совет #2

Хотя бы 1 раз в 2-3 недели заглядывайте в Яндекс Вебмастер в разделы «Индексирование — Статистика обхода» и «Индексирование — Страницы в поиске». Отслеживайте страницы, которые обходит поисковый робот на вашем сайте.

robots-txt-2.jpg

Если робот обходит технические страницы, или страницы, которые отвечают редиректом, их следуют запретить директивой Disallow в robots.txt. Таким образом вы сузите объем страниц, который необходимо обойти поисковому роботу и повысите эффективность индексации своего сайта.

robots-txt-3.png

Аналогична ситуация с разделом «Страницы в поиске». С его помощью вы можете не только отследить документы, которые больше не участвуют в поиске, но и проверить свой сайт на предмет наличия поискового спама. Если в данном разделе вы также найдете технические страниц, либо сервисные страницы с параметрами, которые не должны принимать участие в ранжировании, добавьте запрет на их обход в robots.txt.

Заключение

Файл robots.txt является одним из важнейших инструментов SEO-оптимизации. Через него можно напрямую влиять на индексирование абсолютно любых страниц и разделов сайта. Грамотно составленный robots.txt поможет вам сэкономить место в ограниченном краулинговом бюджете, избавит поисковые роботы от переобхода сотен ненужных технических страниц, избавит выдачу от поискового спама, а ваш сервер от излишней нагрузки. Создавайте robots.txt  с умом!

Если у вас возникли вопросы по данной статье — задайте их в комментариях.Не забывайте подписываться на блог и получать актуальную информацию из мира интернет-маркетинга.

Одной из важнейших вещей при создании и оптимизации сайта для поисковых систем считают Robots.txt. Небольшой файлик, где прописаны правила индексирования для поисковых роботов.

Если файл будет настроен неправильно, то сайт может неправильно индексироваться и терять большие доли трафика. Грамотная настройка наоборот позволяет улучшить SEO, и вывести ресурс в топы.

Сегодня мы поговорим о настройке Robots.txt для WordPress. Я покажу вам правильный вариант, который сам использую для своих проектов.

Содержание

Что такое Robots.txt

Как я уже и сказал, robots.txt — текстовой файлик, где прописаны правила для поисковых систем. Стандартный robots.txt для WordPress выглядит следующим образом:

User-agent: *  Disallow: /wp-admin/  Allow: /wp-admin/admin-ajax.php

Именно в таком виде он создается плагином Yoast SEO. Некоторые считают, что этого хватит для правильной индексации. Я же считаю, что нужна более детальная проработка. А если речь идет о нестандартных проектах, то проработка нужна и подавно. Давайте разберемся в основных директивах:

Директива Значение Пояснение
User-agent: Yandex, Googlebot и т.д. В этой директиве можно указать к какому конкретно роботу мы обращаемся. Обычно используются те значения, которые я указал.
Disallow: Относительная ссылка Директива запрета. Ссылки, указанные в этой директиве будут игнорироваться поисковыми системами.
Allow: Относительная ссылка Разрешающая директива. Ссылки, которые указаны с ней будут проиндексированы.
Sitemap: Абсолютная ссылка Здесь указывается ссылка на XML-карту сайта. Если в файле не указать эту директиву, то придется добавлять карту вручную (через Яндекс.Вебмастер или Search Console).
Crawl-delay: Время в секундах (пример: 2.0 — 2 секунды) Позволяет указать таймаут между посещениями поисковых роботов. Нужна в случае, если эти самые роботы создают дополнительную нагрузку на хостинг.
Clean-param: Динамический параметр Если на сайте есть параметры вида site.ru/statia?uid=32, где ?uid=32 — параметр, то с помощью этой директивы их можно скрыть.

В принципе, ничего сложного. Дам дополнительные пояснения по директивам Clean-param (откройте вкладку).

Параметры, как правило, используются на динамических сайтах. Они могут передавать поисковым системам лишнюю информацию — создавать дубли. Чтобы избежать этого, мы должны указать в Robots.txt директиву Clean-param с указанием параметра и ссылки, к которой это параметр применяется.

В нашем примере site.ru/statia?uid=32 — site.ru/statia — ссылка, а все, что после знака вопроса — параметр. Здесь это uid=32. Он динамический, и это значит, что параметр uid может принимать другие значения.

Например, uid=33, uid=34…uid=123434. В теории их может быть сколько угодно, поэтому мы должны закрыть от индексации все параметры uid. Для этого директива должна принять такой вид:

Clean-param: uid /statia # все параметры uid для statia будут закрыты

Более подробно о том, что такое Robots.txt можно узнать из Яндекс.Помощи. Или из этого видеоролика:

Базовый Robots.txt для WordPress

Совсем недавно я приобрел плагин Clearfy Pro для своих проектов. Там очень много разных функций, и одна из них — создание идеального Robots.txt. На самом деле насколько он идеален — я не знаю, вебмастера расходятся во мнениях.

Кто-то предпочитает делать более краткие версии роботса, указывая правила для всех поисковых систем сразу. Другие прописывают отдельные правила для каждого поисковика (в основном для Яндекса и Гугла).

Что из этого правильно — точно сказать не могу. Однако я предлагаю вам ознакомиться с базовой версией Robots.txt для WordPress от Clearfy Pro. Я немного подредактировал ее — указал директиву Sitemap. Удалил директиву Host.

User-agent: *  Disallow: /wp-admin  Disallow: /wp-includes  Disallow: /wp-content/plugins  Disallow: /wp-content/cache  Disallow: /wp-json/  Disallow: /xmlrpc.php  Disallow: /readme.html  Disallow: /*?  Disallow: /?s=  Allow: /*.css  Allow: /*.js  Sitemap: https://site.ru/sitemap.xml

Не могу сказать, что это лучший вариант для блогов на ВП. Но во всяком случае, он лучше, чем то, что нам предлагает Yoast SEO по умолчанию.

Расширенный Robots.txt для WordPress

Теперь посмотрим на расширенную версию Robots.txt для WordPress. Наверняка вы знаете, что все сайты на WP имеют одинаковую структуру. Одинаковые названия папок, файлов и т.д. позволяют специалистам выявить наиболее приемлемый вариант роботса.

Читайте также: Самые лучшие SEO-оптимизированные шаблоны для WordPress

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

Итак, правильный Robots.txt для WordPress выглядит следующим образом:

User-agent: * # Для всех поисковых систем, кроме Яндекса и Гугла     Disallow: /cgi-bin            Disallow: /?                  Disallow: /wp-                Disallow: *?s=                Disallow: *&s=               Disallow: /search/    Disallow: /author/  Disallow: /users/        Disallow: */trackback                       Disallow: */feed              Disallow: */rss               Disallow: */embed            Disallow: /xmlrpc.php        Disallow: *utm=              Disallow: *openstat=    Disallow: /tag/ # Закрываем метки  Disallow: /readme.html # Закрываем бесполезный мануал по установке WordPress (лежит в корне)  Disallow: *?replytocom  Allow: */uploads       User-agent: GoogleBot # Для Гугла  Disallow: /cgi-bin  Disallow: /?  Disallow: /wp-  Disallow: *?s=  Disallow: *&s=  Disallow: /search/  Disallow: /author/  Disallow: /users/  Disallow: */trackback  Disallow: */feed  Disallow: */rss  Disallow: */embed  Disallow: /xmlrpc.php  Disallow: *utm=  Disallow: *openstat=  Disallow: /tag/ # Закрываем метки  Disallow: /readme.html  Disallow: *?replytocom  Allow: */uploads  Allow: /*/*.js             Allow: /*/*.css             Allow: /wp-*.png            Allow: /wp-*.jpg  Allow: /wp-*.jpeg  Allow: /wp-*.gif  Allow: /wp-admin/admin-ajax.php    User-agent: Yandex # Для Яндекса  Disallow: /cgi-bin  Disallow: /?  Disallow: /wp-  Disallow: *?s=  Disallow: *&s=  Disallow: /search/  Disallow: /author/  Disallow: /users/  Disallow: */trackback  Disallow: */feed  Disallow: */rss  Disallow: */embed  Disallow: /xmlrpc.php  Disallow: /tag/ # Закрываем метки  Disallow: /readme.html  Disallow: *?replytocom  Allow: */uploads  Allow: /*/*.js  Allow: /*/*.css  Allow: /wp-*.png  Allow: /wp-*.jpg  Allow: /wp-*.jpeg  Allow: /wp-*.gif  Allow: /wp-admin/admin-ajax.php  Clean-Param: utm_source&utm_medium&utm_campaign                            Clean-Param: openstat    Sitemap: https://site.com/sitemap_index.xml # Карта сайта, меняем site.com на нужный адрес.

Важно:Ранее в Robots.txt использовалась директива Host. Она указывала главное зеркало сайта. Теперь это делается при помощи редиректа. Подробнее об этом можно почитать в блоге Яндекса.

Комментарии (текст после #) можно удалить. Указываю Sitemap с https протоколом, т.к. большинство сайтов сейчас используют защищенное соединение. Если у вас нет SSL, то измените протокол на http.

Читайте также: Как правильно настроить WordPress

Обратите внимание на то, что я закрываю метки (теги). Делаю это потому, что они создают большое количество дублей. Это плохо сказывается на SEO, но если вы хотите открыть метки, тогда уберите строчку disallow: /tag/ из файла.

Заключение

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

В других ситуациях может потребоваться индивидуальная проработка. На этом все. Спасибо за внимание. Буду благодарен, если вы включите уведомления через колокольчик и подпишитесь на почтовую рассылку. Тут будет круто :).

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Используемые источники:

  • https://seogio.ru/robots-txt/
  • https://naked-seo.ru/blog/robots-txt/
  • https://awayne.biz/pravilnyy-robots-txt-dlya-wordpress/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации