Многие начинающие вебмастера рано или поздно сталкиваются с понятием роботс. В этом посте я расскажу, что значит robots.txt и для чего он нужен.
Robots.txt — это файл в корневой директории сайта, который ограничивает поисковым роботам индексацию данных на сервере.
Говоря более простым языком, роботс запрещает поисковикам заходить на определенные страницы или разделы вашего сайта, например, доступ в админку сайта или личный кабинет. Обычно закрывают служебные папки или файлы, технические страницы, дубликаты и не уникальные страницы.
Если на вашем сайте отсутствует файл robots.txt или он пустой, то это дает роботам полное право индексировать весь сайт и включать в поиск все страницы, в том числе разный мусор, хлам, который там абсолютно не нужен. Для сайта это может быть чревато плохой индексацией главных продвигаемых страниц, а также наличием дублей, что в итоге скажется на общем рейтинге в глазах поисковых систем.
Еще хочу сказать такую штуку — для google роботс нахер не нужен по сути, он его игнорирует. В индексе все равно появляются страницы, закрытые в роботсе, только у них надпись, что просмотр содержимого недоступен, но сами страницы в индексе. Поэтому, если хотите закрыть от индексации гугла какой-то контент, то пользуйтесь другими способами — meta robots noindex или x-robots tag.
Содержание:
Вот как должен выглядеть пример файла для CMS WordPress
User-agent: *
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /wp-includes/
Allow: /wp-content/themes/mytheme/*
Allow: /wp-includes/js/jquery/*
Allow: /wp-content/plugins/*
Allow: /wp-content/uploads/*
Clean-Param: utm_source&utm_medium&utm_campaign
Sitemap: https://mydaoseo.ru/sitemap.xml
Как видим, содержимое robots.txt достаточно обширное. Но не нужно пугаться, все объяснимо и понятно. Давайте разберемся вместе.
Существуют определенные правила для поисковых роботов согласно спецификации W3C от 30 января 1994 года. Но поисковые системы по-разному придерживаются этих директив.
Это главная директива, она определяет, для каких роботов прописаны правила.
Например, для всех роботов
User-agent: *
Для Яндекса
User-agent: Yandex
Для Google
User-agent: Googlebot
Если перевести эти слова, то достаточно просто понять, что значат директивы allow и disallow в robots.txt. Allow разрешает роботу сканировать страницы или разделы, а disallow этого не позволяет.
Например, данная команда полностью запрещает весь сайт к индексации.
User-agent: *
Disallow: /
Если нужно закрыть отдельную страницу, то прописываем ее адрес (без домена)
User-agent: *
Disallow: /articles/kak-prodvinut-sait/
Директива Allow открывает нужные нам разделы или страницы сайта. Например, необходимо закрыть папку со статьями, но одну статью оставить открытой для индекса. Прописываем так:
User-agent: *
Disallow: /articles*
Allow: /articles/kak-prodvinut-sait/
Дополнительно еще нужно сказать про спецсимволы:
* — означает, что правило применимо для всех документов раздела. Выше я прописал относительный путь Disallow: /articles* — это значит, от индекса закрыты все статьи. Если бы я прописал абсолютный путь Disallow: /articles/, то закрыт был бы только раздел статей, но сами статьи продолжали бы индексироваться.
# — означает комментарий, все, что написано после # до перевода строки, роботом не учитывается. Например:
User-agent: *
Disallow: /articles*
# закрывает от индекса все страницы раздела статей
$ — отменяет спецсимвол * (закрывает от робота только то, что написано до спецсимвола $). Например:
User-agent: *
Disallow: /articles$
# от индекса закрыт только раздел статей, но сами статьи продолжают индексироваться.
Директива crawl-delay в robots.txt раньше применялась яндексом для регулирования частоты запросов роботов на сайт. Но в феврале 2018 года поисковик отменил директиву. Теперь вместо нее в вебмастере появился раздел «Скорость обхода».
Директива clean-param в robots.txt сообщает роботу, что нельзя индексировать url адрес с заданными параметрами, например, префиксы, идентификаторы сессий, utm-метки. Это нужно для того, чтобы не загружать один и тот же документ много раз и сделать индексацию сайта эффективнее.
Например, у нас есть страница https://mydaoseo.ru/articles/kak-prodvinut-sait.php и нам нужно отследить, откуда приходят на нее пользователи.
https://mydaoseo.ru/articles/kak-prodvinut-sait.php?site=1&r_id=123
https://mydaoseo.ru/articles/kak-prodvinut-sait.php?site=2&r_id=123
https://mydaoseo.ru/articles/kak-prodvinut-sait.php?site=3&r_id=123
В данном случае директива clean-param будет записана вот так:
User-agent: *
Disallow:
Clean-param: site /articles/kak-prodvinut-sait.php
В результате данной команды робот сведет все страницы к одной
https://mydaoseo.ru/articles/kak-prodvinut-sait.php?site=1&r_id=123
Директива host использовалась раньше яндексом, чтобы показать роботу основное зеркало сайта (с www или без www, http или https), которое будет участвовать в поиске. Но в марте 2018 года яндекс отменил host, теперь его использовать не нужно.
Читайте также: как сделать правильный переезд сайта с http на https.
Директива sitemap нужна, чтобы указать путь к XML карте сайта. Обычно sitemap располгается в корне сайта по следующему адресу site.ru/sitemap.xml. Например:
User-agent: *
Disallow:
Sitemap: https://mydaoseo.ru/sitemap.xml
Директиву можно прописать несколько раз, особенно это актуально для больших интернет магазинов, где огромное количество страниц, и в один XML файл все страницы не умещаются. Расположение sitemap.xml также особого значения не имеет, но по правилам хорошего тона следует его располагать в самом низу роботса.
Это основные команды robots.txt. Есть еще и другие, но они не поддерживаются большинством поисковых систем.
Читайте также: как сделать технический аудит сайта
Роботс будет отличаться для разных сайтов, в зависимости от того, на какой платформе он разработан. Сайт может быть самописным, на платном или бесплатном движке (CMS) или сделан с помощью конструктора. В любом случае универсального варианта нет, нужно отталкиваться конкретно от вашей ситуации.
Есть кстати, еще один способ составить роботс самому. Нужно найти несколько сайтов с такой же CMS, как у вас и составить свой роботс на их примере. Для того, чтобы найти и посмотреть файл robots.txt чужого сайта, нужно к домену прописать /robots.txt. Например:
https://mydaoseo.ru/robots.txt
Так вы можете подсмотреть, проанализировать и скомпоновать свой собственный файл. Но учтите, что можно таким способом нахватать фатальных ошибок от чужих роботсов. Будьте аккуратны при этом способе.
Итак, мы разобрались, зачем нужен файл robots txt, какие функции выполняет, основные директивы. Посмотрите также небольшое видео, чтобы закрепить материал.
P.S. Если вам понравилась статья, то поделитесь ею со своими друзьями. Если у вас есть вопросы или дополнения, то пишите комментарий внизу.
Я считаю продвижение сайтов стабильно хорошо продвигается
я тоже так думаю
Какой robots лучше использовать для самописного сайта?
смотрите по выдаче, какие страницы нужно закрыть от индекса, закрывается админка всегда, технические страницы, прописывается сайтмап.