Правила написания robots.txt — управляем индексацией сайта

Быстрая навигация по этой странице:

Современная реальность такова, что в Рунете ни один уважающий себя сайт не может обходиться без файла под названием роботс.тхт — даже если вам нечего запрещать от индексации (хотя практически на каждом сайте есть технические страницы и дублирующий контент, требующие закрытия от индексации), то как минимум прописать директиву с www и без www для Яндекса однозначно стоит — для этого и служат правила написания robots.txt, о которых пойдет речь ниже.

правила написания robots.txt

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

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

Файл с таким названием должен быть сохранен в корневой директории сайта, размещение его в каких-либо других папках не допускается.

Файл выполняет следующие функции:

  1. запрещает какие-либо страницы или группы страниц к индексации
  2. разрешает какие-либо страницы или группы страниц к индексации
  3. указывает роботу Яндекса, какое зеркало сайта является главным (с www или без www)
  4. показывает расположение файла с картой сайта

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

Директива allow самостоятельного значения не имеет, так как по умолчанию все страницы и так доступны для индексации. Она работает в связке с disallow — когда, например, какая-то рубрика полностью закрыта от поисковиков, но вы хотели бы открыть в ней ту или отдельно взятную страницу.

Указание на главное зеркало сайта также является одним из самых важных элементов в оптимизации: поисковики рассматривают сайты www.вашсайт.ру и вашсайт.ру как два разных ресурса, если вы им прямо не укажете иное. В результате происходит удвоение контента — появление дублей, уменьшение силы внешних ссылок (внешние ссылки могут ставиться как с www, так и без www) и в результате это может привести к более низкому ранжированию в поисковой выдаче.

Для Google главное зеркало прописывается в инструментах Вебмастера (http://www.google.ru/webmasters/), а вот для Яндекса данные инструкции можно прописать только в том самом роботс.тхт.

Указание на xml-файл с картой сайта (например — sitemap.xml) позволяет поисковикам обнаружить данный файл.

Правила указания User-agent

User-agent в данном случае — это поисковая система. При написании инструкций необходимо указать, будут ли они действовать на все поисковики (тогда проставляется знак звездочки — *) или же они рассчитаны на какой-то отдельный поисковик — например, Яндекс или Google.

Для того, чтобы задать User-agent с указанием на всех роботов, напишите в своем файле следующую строку:

User-agent: * 

Для Яндекса:

User-agent: Yandex 

Для Гугла:

User-agent: GoogleBot

Правила указания disallow и allow

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

Посредством такого кода вы разрешаете индексацию всех страниц сайта:

User-agent: * 
Disallow: 

А посредством такого кода, напротив, все странички будут закрыты:

User-agent: * 
Disallow: / 

Для запрета на индексацию конкретной директории под названием folder укажите:

User-agent: * 
Disallow: /folder

Для запрета на индексацию конкретной директории под названием folder укажите:

User-agent: * 
Disallow: /folder

Можно использовать также звездочки для подстановки произвольного названия:

User-agent: * 
Disallow: *.php

Важно: звездочка заменяет название файла целиком, то есть нельзя указать file*.php, можно только *.php (но будут запрещены все страницы с расширением .php, чтобы этого избежать — можете указать конкретный адрес страницы).

Директива allow, как было указано выше, используется для создания исключений в disallow (иначе она не имеет смысла, так как страницы по умолчанию и так открыты).

Например, запретим к индексации страницы в папке archive, но оставим открытой страничку index.html из этой директории:

Allow: /archive/index.html
Disallow: /archive/

Указываем хост и карту сайта

Хост — это главное зеркало сайта (то есть название домена плюс www или название домена без этой приставки). Хост указывается только для робота Яндекса (при этом обязательно должна быть хотя бы одна команда disallow).

Для указания host robots.txt должен содержать следующую запись:

User-agent: Yandex
Disallow:
Host: www.вашсайт.ру

Что касается карты сайта, то в robots.txt sitemap указывается простым прописанием полного пути к соответствующему файлу, с указанием доменного имени:

Sitemap: http://вашсайт.ру/sitemap.xml 

О том, как сделать карту сайта для WordPress, написано тут.

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

Для wordpress инструкции необходимо указывать таким образом, чтобы закрыть к индексации все технические директории (wp-admin, wp-includes и т.д.), а также дубли страниц, создаваемые тегами, файлами rss, комментариями, поиском.

В качестве примера robots.txt для wordpress можете взять файл с нашего сайта:

User-agent: Yandex
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /search
Disallow: */trackback
Disallow: */feed/
Disallow: */feed
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=
Disallow: */page/*
Disallow: */comment
Disallow: */tag/*
Disallow: */attachment/*
Allow: /wp-content/uploads/

Host: www.runcms.org

User-agent: Googlebot
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /search
Disallow: */trackback
Disallow: */feed/
Disallow: */feed
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=
Disallow: */page/*
Disallow: */comment
Disallow: */tag/*
Disallow: */attachment/*
Allow: /wp-content/uploads/

User-agent: *
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /search
Disallow: */trackback
Disallow: */feed/
Disallow: */feed
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=
Disallow: */page/*
Disallow: */comment
Disallow: */tag/*
Disallow: */attachment/*
Allow: /wp-content/uploads/

Sitemap: http://www.runcms.org/sitemap.xml

Скачать файл robots.txt с нашего сайта можно по этой ссылке.

Если по итогам прочтения этой статьи у вас остались какие-либо вопросы — задавайте в комментариях!

Если Вы нашли для себя что-то полезное на этой странице, пожалуйста, нажмите на одну из этих кнопок:
Комментарии
    • Александр Иванов

      Такого примера в статье нет. Директива host должна указываться без http://

  1. qwinmen

    У вас дублируется запись «Для запрета на индексацию конкретной директории под названием folder укажите:». Необходимо исправить)

  2. Игорь

    Здравствуйте! Подскажите, у многих видел, что заблокирована строка wp-comments. Я так понимаю это комментарии, так вот их нужно блокировать или нет?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>