Настройка robots txt

Здесь указывается робот, для которого будут актуальны правила, которые описаны ниже. Чаще всего встречаются записи:

  • User-agent: * (для всех роботов);
  • User-agent: Yandex (конкретно для всех роботов Яндекса).

Я всегда делаю правила для 2 роботов * и Yandex, т. к. ранее были случаи, когда бот Яндекса просто проигнорировал правила в *. С тех пор прошло много времени, но перепроверять сие действие нет желания, проще сделать 2 юзер-агента.

Для Яндекса у нас есть следующие юзер-агенты (если вы решите закрывать страницы именно для конкретного бота, а не всех):

  • YandexBlogs — робот, индексирующий посты и комментарии;
  • YandexBot — основной индексирующий робот;
  • YandexCalendar — робот Яндекс.Календаря;
  • YandexDirect — скачивает информацию о контенте сайтов-партнеров Рекламной сети, чтобы уточнить их тематику для подбора релевантной рекламы, интерпретирует robots.txt особым образом;

  • YandexDirectDyn — робот генерации динамических баннеров, интерпретирует robots.txt особым образом;
  • YaDirectFetcher — робот Яндекс.Директа, интерпретирует robots.txt особым образом;
  • YandexImages — индексатор Яндекс.Картинок;
  • YandexMarket — робот Яндекс.Маркета;
  • YandexMedia — робот, индексирующий мультимедийные данные;
  • YandexMetrika — робот Яндекс.Метрики;
  • YandexNews — робот Яндекс.Новостей;
  • YandexPagechecker — валидатор микроразметки.

Для Google:

  • APIs-Google — агент пользователя, который API Google применяет для отправки push-уведомлений;
  • Mediapartners-Google — робот-анализатор AdSense;
  • AdsBot-Google-Mobile — проверяет качество рекламы на веб-страницах, предназначенных для устройств Android и IOS;
  • AdsBot-Google — проверяет качество рекламы на веб-страницах, предназначенных для компьютеров;
  • Googlebot-Image — робот индексирующий картинки;
  • Googlebot-News — робот Google новостей;
  • Googlebot-Video — робот Google видео;
  • Googlebot — основной инструмент для сканирования контента в Интернете;
  • Googlebot-Mobile — робот индексирующий сайты для мобильных устройств.

serpstat.com

Для чего предназначен?

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

Настройка robots txt

Обычно от индексации закрываются технические разделы сайта. Изредка в черный список попадают неуникальные страницы (копипаст политики конфиденциальности тому пример). Здесь же “роботам объясняются” принципы работы с разделами, которые нужно индексировать. Очень часто прописывают правила для нескольких роботов отдельно. Об этом мы и поговорим далее.

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

Создание robots.txt

Чтобы создать файл, достаточно воспользоваться стандартным функционалом вашей операционной системы, после чего выгрузить его на сервер через FTP. Где он лежит (на сервере) догадаться несложно – в корне. Обычно эта папка называется public_html.

Вы без труда сможете попасть в нее с помощью любого FTP-клиента (например, FileZilla) или встроенного файлового менеджера. Естественно, мы не будем загружать на сервер пустой роботс. Впишем туда несколько основных директив (правил).


Настройка robots txt

User-agent: *
Allow: /

Используя эти строки в своем файле robots, вы обратитесь ко всем роботам (директива User-agent), позволив им индексировать ваш сайт всецело и полностью (включая все тех. страницы Allow: /)

Конечно же, такой вариант нам не особо подходит. Файл будет не особо полезен для оптимизации под поисковики. Он определенно нуждается в грамотной настройке. Но перед этим мы рассмотрим все основные директивы и значения robots.txt.

Директивы


User-agent Одна из важнейших, т. к. указывает каким роботам следовать идущим после нее правилам. Правила учитываются до следующего User-agent в файле.
Allow Разрешает индексацию каких-либо блоков ресурса. Например: “/” или “/tag/”.
Disallow Наоборот, запрещает индексацию разделов.
Sitemap Путь до карты сайта (в формате xml).
Host Главное зеркало (с www или без, или если у вас несколько доменов). Здесь же указывается защищенный протокол https (при наличии). Если у вас стандартный http, его указывать не нужно.
Crawl-delay С ее помощью вы сможете установить интервал посещения и загрузки файлов вашего сайта для роботов. Помогает снизить нагрузку на хост.
Clean-param

 

Позволяет отключить индексацию параметров на тех или иных страницах (по типу www.site.com/cat/state?admin_id8883278).
В отличие от предыдущих директив, здесь указываются 2 значения (адрес и сам параметр).

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

Настройка

Для грамотной настройки файла роботов нам нужно точно знать, какие из разделов сайта должны быть проиндексированы, а какие – нет. В случае с простым одностраничником на html + css нам достаточно прописать несколько основных директив, таких как:

User-agent: *
Allow: /
Sitemap: site.ru/sitemap.xml
Host: www.site.ru

Здесь мы указали правила и значения для всех поисковых систем. Но лучше добавить отдельные директивы для Гугла и Яндекса. Выглядеть это будет так:

User-agent: *
Allow: /

User-agent: Yandex
Allow: /
Disallow: /politika

User-agent: GoogleBot
Allow: /
Disallow: /tags/


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

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

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

Среди таких сервисов можно выделить:

  • PR-CY,
  • htmlweb.

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

Говоря о платформах, я имею ввиду всевозможные CMS, фреймворки, SaaS-системы и многое другое. Далее мы поговорим о том, как настраивать файл роботов WordPress и Joomla.

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

Закрываем от индексирования (Disallow):

  • админку сайта;
  • личный кабинет и страницы регистрации/авторизации;
  • корзину, данные с форм заказов (для интернет-магазина);
  • папку cgi (располагается на хосте);
  • служебные разделы;
  • скрипты ajax и json;
  • UTM и Openstat-метки;
  • различные параметры.

Открываем (Allow):

  • картинки;
  • JS и CSS-файлы;
  • прочие элементы, которые должны учитываться поисковыми системами.

Помимо этого, в конце не забываем указать данные sitemap (путь к карте сайта) и host (главное зеркало).

Robots.txt для WordPress

Для создания файла нам нужно точно так же забросить robots.txt в корень сайта. Изменять его содержимое в таком случае можно будет с помощью все тех же FTP и файловых менеджеров.

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

Как вы решите создать этот файл – дело ваше, нам важнее понять, какие именно директивы там должны быть. На своих сайтах под управлением WordPress использую такой вариант:

User-agent: * # правила для всех роботов, за исключением Гугла и Яндекса

Disallow: /cgi-bin # папка со скриптами
Disallow: /? # параметры запросов с домашней страницы
Disallow: /wp- # файлы самой CSM (с приставкой wp-)
Disallow: *?s= #
Disallow: *&s= # все, что связано с поиском
Disallow: /search/ # /
Disallow: /author/ # архивы авторов
Disallow: /users/ # и пользователей
Disallow: */trackback # уведомления от WP о том, что на вас кто-то ссылается
Disallow: */feed # фид в xml
Disallow: */rss # и rss
Disallow: */embed # встроенные элементы
Disallow: /xmlrpc.php # WordPress API
Disallow: *utm= # UTM-метки
Disallow: *openstat= # Openstat-метки
Disallow: /tag/ # тэги (при наличии)
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/
Allow: */uploads
Allow: /*/*.js # открываем JS-файлы
Allow: /*/*.css # и CSS
Allow: /wp-*.png # и картинки в формате 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/
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 # чистим UTM-метки
Clean-Param: openstat # и про Openstat не забываем


Sitemap: https://site.ru/sitemap_index.xml # прописываем путь до карты сайта
Host: https://site.ru # главное зеркало

Внимание! При копировании строк в файл – не забудьте удалить все комментарии (текст после #).

Такой вариант robots.txt наиболее популярен среди вебмастеров, которые используют WP. Идеальный ли он? Нет. Вы можете попытаться что-то добавить или наоборот убрать. Но учтите, что при оптимизации текстовика роботов нередки ошибки. О них мы поговорим далее.

Robots.txt для Joomla

И хотя в 2018 Joomla редко кто использует, я считаю, что нельзя обделять вниманием эту замечательную CMS. При продвижении проектов на Joomla вам непременно придется создавать файл роботс, а иначе как вы хотите закрывать от индексации ненужные элементы?

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

User-agent: *
Allow.
/p>

Disallow: /logs/
Disallow: /component/tags*
Disallow: /*%
Disallow: /layouts/

User-agent: Yandex
Disallow: /cache/
Disallow: /*.pdf
Disallow: /administrator/
Disallow: /installation/
Disallow: /cli/
Disallow: /libraries/
Disallow: /language/
Disallow: /components/
Disallow: /modules/
Disallow: /includes/
Disallow: /bin/
Disallow: /component/
Disallow: /tmp/
Disallow: /index.php
Disallow: /plugins/
Disallow: /*mailto/

Disallow: /logs/
Disallow: /component/tags*
Disallow: /*%
Disallow: /layouts/

User-agent: GoogleBot
Disallow: /cache/
Disallow: /*.pdf
Disallow: /administrator/
Disallow: /installation/
Disallow: /cli/
Disallow: /libraries/
Disallow: /language/
Disallow: /components/
Disallow: /modules/
Disallow: /includes/
Disallow: /bin/
Disallow: /component/
Disallow: /tmp/
Disallow: /index.php
Disallow: /plugins/
Disallow: /*mailto/

Disallow: /logs/
Disallow: /component/tags*
Disallow: /*%
Disallow: /layouts/

Host: site.ru # не забудьте здесь поменять адрес на свой
Sitemap: site.ru/sitemap.xml # и здесь

Как правило, этого достаточно, чтобы лишние файлы не попадали в индекс.

Ошибки при настройке


Очень часто люди допускают ошибки при создании и настройке файла роботс. Вот самые часто встречающиеся из них:

  • Правила указаны только для User-agent.
  • Отсутствуют Host и Sitemap.
  • Наличие http-протокола в директиве Host (нужно указывать лишь https).
  • Несоблюдение правил вложенности при открытии/закрытии картинок.
  • Не закрыты UTM и Openstat-метки.
  • Прописывание директив host и sitemap для каждого робота.
  • Поверхностная проработка файла.

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

Как проверить файл?

Для этих целей лучше использовать специальные сервисы от Yandex и Google, т. к. эти поисковые системы являются наиболее популярными и востребованными (чаще всего единственно используемыми), такие поисковики как Bing, Yahoo или Rambler рассматривать нет смысла.

Для начала рассмотрим вариант с Яндексом. Заходим в Вебмастер. После чего в Инструменты – Анализ robots.txt.

Настройка robots txt

Здесь вы сможете проверить файл на ошибки, а также проверить в реальном времени, какие страницы открыты для индексации, а какие – нет. Весьма удобно.

У Гугла есть точно такой же сервис. Идем в Search Console. Находим вкладку Сканирование, выбираем – Инструмент проверки файла robots.txt.

Настройка robots txt

Здесь точно такие же функции, как и в отечественном сервисе.

Обратите внимание, что он показывает мне 2 ошибки. Связано это с тем, что Гугл не распознает директивы очистки параметров, которые я указал для Яндекса:

Clean-Param: utm_source&utm_medium&utm_campaign
Clean-Param: openstat

Обращать внимание на это не стоит, т. к. роботы Google используют только правила для GoogleBot.

Заключение

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

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

А если вы хотите более глубоко разобраться в robots.txt и создании сайтов на WordPress, то я приглашаю вас на курс Василия Блинова “Как создать блог”. На нем вы узнаете, как можно без особого труда создать сайт, не забыв оптимизировать его для поисковиков.

iklife.ru

Индексация сайта

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

Почему так важно управлять индексацией сайта

Надо очень четко понимать, что при использовании CMS (движка) не все содержимое сайта должно быть доступно роботам поисковых систем. Почему?

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

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

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

https://ktonanovenkogo.ru/robots.txt

Кстати, если вы хотите узнать как выглядит этот файл у того или иного проекта в сети, то достаточно будет дописать к Урлу его главной страницы окончание вида /robots.txt. Это может быть полезно для понимания того, что в нем должно быть.

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

Как можно запретить индексацию отдельных частей сайта и контента?

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

  1. Роботс.тхт — самый высокоуровневый способ, ибо позволяет задать правила индексации для всего сайта целиком (как его отдельный страниц, так и целых каталогов). Он является полностью валидным методом, поддерживаемым всеми поисковиками и другими ботами живущими в сети. Но его директивы вовсе не являются обязательными для исполнения. Например, Гугл не шибко смотрит на запреты в robots.tx — для него авторитетнее одноименный мета-тег рассмотренный ниже.
  2. Мета-тег robots — имеет влияние только на страницу, где он прописан. В нем можно запретить индексацию и переход робота по находящимся в этом документе ссылкам (подробнее смотрите ниже). Он тоже является полностью валидным и поисковики будут стараться учитывать указанные в нем значения. Для Гугла, как я уже упоминал, этот метод имеет больший вес, чем файлик роботса в корне сайта.
  3. Тег Noindex и атрибут rel=»nofollow» — самый низкоуровневый способ влияния на индексацию. Они позволяют закрыть от индексации отдельные фрагменты текста (noindex) и не учитывать вес передаваемый по ссылке. Они не валидны (их нет в стандартах). Как именно их учитывают поисковики и учитывают ли вообще — большой вопрос и предмет долгих споров (кто знает наверняка — тот молчит и пользуется).

Важно понимать, что даже «стандарт» (валидные директивы robots.txt и одноименного мета-тега) являются необязательным к исполнению. Если робот «вежливый», то он будет следовать заданным вами правилам. Но вряд ли вы сможете при помощи такого метода запретить доступ к части сайта роботам, ворующим у вас контент или сканирующим сайт по другим причинам.

Вообще, роботов (ботов, пауков, краулеров) существует множество. Какие-то из них индексируют контент (как например, боты поисковых систем или воришек). Есть боты проверяющие ссылки, обновления, зеркалирование, проверяющие микроразметку и т.д. Смотрите сколько роботов есть только у Яндекса.

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

Robots.txt — директива user-agent и боты поисковых систем

Роботс.тхт имеет совсем не сложный синтаксис, который очень подробно описан, например, в хелпе яндекса и хелпе Гугла. Обычно в нем указывается, для какого поискового бота предназначены описанные ниже директивы: имя бота ('User-agent'), разрешающие ('Allow') и запрещающие ('Disallow'), а также еще активно используется 'Sitemap' для указания поисковикам, где именно находится файл карты.

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

Например, раньше для поисковой системы Яндекс было полезным указать, какое из зеркал вашего вебпроекта является главным в специальной директиве 'Host', которую понимает только этот поисковик (ну, еще и Майл.ру, ибо у них поиск от Яндекса). Правда, в начале 2018 Яндекс все же отменил Host и теперь ее функции как и у других поисковиков выполняет 301-редирект.

Если даже у вашего ресурса нет зеркал, то полезно будет указать, какой из вариантов написания является главным — с www или без него.

Теперь поговорим немного о синтаксисе этого файла. Директивы в robots.txt имеют следующий вид:

<поле>:<пробел><значение><пробел> <поле>:<пробел><значение><пробел>

Правильный код должен содержать хотя бы одну директиву «Disallow» после каждой записи «User-agent». Пустой файл предполагает разрешение на индексирование всего сайта.

User-agent

Директива «User-agent» должна содержать название поискового бота. При помощи нее можно настроить правила поведения для каждого конкретного поисковика (например, создать запрет индексации отдельной папки только для Яндекса). Пример написания «User-agent», адресованной всем ботам зашедшим на ваш ресурс, выглядит так:

User-agent: * 

Если вы хотите в «User-agent» задать определенные условия только для какого-то одного бота, например, Яндекса, то нужно написать так:

User-agent: Yandex

Название роботов поисковых систем и их роль в файле robots.txt

Бот каждой поисковой системы имеет своё название (например, для рамблера это StackRambler). Здесь я приведу список самых известных из них:

Google http://www.google.com Googlebot Яндекс http://www.ya.ru 	 Yandex Бинг http://www.bing.com/ 	 bingbot 

У крупных поисковых систем иногда, кроме основных ботов, имеются также отдельные экземпляры для индексации блогов, новостей, изображений и т.д. Много информации по разновидностям ботов вы можете почерпнуть тут (для Яндекса) и тут (для Google).

Настройка robots txt

Как быть в этом случае? Если нужно написать правило запрета индексации, которое должны выполнить все типы роботов Гугла, то используйте название Googlebot и все остальные пауки этого поисковика тоже послушаются. Однако, можно запрет давать только, например, на индексацию картинок, указав в качестве User-agent бота Googlebot-Image. Сейчас это не очень понятно, но на примерах, я думаю, будет проще.

Примеры использования директив Disallow и Allow в роботс.тхт

Приведу несколько простых примеров использования директив с объяснением его действий.

  1. Приведенный ниже код разрешает всем ботам (на это указывает звездочка в User-agent) проводить индексацию всего содержимого без каких-либо исключений. Это задается пустой директивой Disallow.
    User-agent: * Disallow:
  2. Следующий код, напротив, полностью запрещает всем поисковикам добавлять в индекс страницы этого ресурса. Устанавливает это Disallow с «/» в поле значения.
    User-agent: * Disallow: /
  3. В этом случае будет запрещаться всем ботам просматривать содержимое каталога /image/ (http://mysite.ru/image/ — абсолютный путь к этому каталогу)
    User-agent: * Disallow: /image/
  4. Чтобы заблокировать один файл, достаточно будет прописать его абсолютный путь до него (читайте про абсолютные и относительные пути по ссылке):
    User-agent: * Disallow: /katalog1//katalog2/private_file.html

    Забегая чуть вперед скажу, что проще использовать символ звездочки (*), чтобы не писать полный путь:

    Disallow: /*private_file.html
  5. В приведенном ниже примере будут запрещены директория «image», а также все файлы и директории, начинающиеся с символов «image», т. е. файлы: «image.htm», «images.htm», каталоги: «image», «images1», «image34» и т. д.):
    User-agent: * Disallow: /image

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

  6. С помощью директивы Allow мы разрешаем доступ. Хорошо дополняет Disallow. Например, таким вот условием поисковому роботу Яндекса мы запрещаем выкачивать (индексировать) все, кроме вебстраниц, адрес которых начинается с /cgi-bin:
    User-agent: Yandex Allow: /cgi-bin Disallow: /

    Ну, или такой вот очевидный пример использования связки Allow и Disallow:

    User-agent: * Disallow: /catalog Allow: /catalog/auto
  7. При описании путей для директив Allow-Disallow можно использовать символы '*' и '$', задавая, таким образом, определенные логические выражения.
    1. Символ '*'(звездочка) означает любую (в том числе пустую) последовательность символов. Следующий пример запрещает всем поисковикам индексацию файлов с расширение «.php»:
      User-agent: * Disallow: *.php$
    2. Зачем нужен на конце знак $ (доллара)? Дело в том, что по логике составления файла robots.txt, в конце каждой директивы как бы дописывается умолчательная звездочка (ее нет, но она как бы есть). Например мы пишем:
      Disallow: /images

      Подразумевая, что это то же самое, что:

      Disallow: /images*

      Т.е. это правило запрещает индексацию всех файлов (вебстраниц, картинок и других типов файлов) адрес которых начинается с /images, а дальше следует все что угодно (см. пример выше). Так вот, символ $ просто отменяет эту умолчательную (непроставляемую) звездочку на конце. Например:

      Disallow: /images$

      Запрещает только индексацию файла /images, но не /images.html или /images/primer.html. Ну, а в первом примере мы запретили индексацию только файлов оканчивающихся на .php (имеющих такое расширение), чтобы ничего лишнего не зацепить:

      Disallow: *.php$
  8. Во многих движках пользователи настраивают так называемые ЧПУ (человеко-понятные Урлы), в то время как Урлы, генерируемые системой, имеют знак вопроса '?' в адресе. Этим можно воспользоваться и написать такое правило в robots.txt:
    User-agent: * Disallow: /*?

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

Директивы Sitemap и Host (для Яндекса) в Robots.txt

Во избежании возникновения неприятных проблем с зеркалами сайта, раньше рекомендовалось добавлять в robots.txt директиву Host, которая указывал боту Yandex на главное зеркало.

Однако, в начале 2018 год это было отменено и и теперь функции Host выполняет 301-редирект.

Директива Host — указывает главное зеркало сайта для Яндекса

Например, раньше, если вы еще не перешли на защищенный протокол, указывать в Host нужно было не полный Урл, а доменное имя (без http://, т.е. ktonanovenkogo.ru, а не https://ktonanovenkogo.ru). Если же уже перешли на https, то указывать нужно будет полный Урл (типа https://myhost.ru).

Сейчас переезд сайта после отказа от директивы Host очень сильно упростился, ибо теперь не нужно ждать пока произойдет склейка зеркал по директиве Host для Яндекса, а можно сразу после настройки Https на сайте делать постраничный редирект с Http на Https.

Напомню в качестве исторического экскурса, что по стандарту написания роботс.тхт за любой директивой User-agent должна сразу следовать хотя бы одна директива Disallow (пусть даже и пустая, ничего не запрещающая). Так же, наверное, имеется смысл прописывать Host для отдельного блока «User-agent: Yandex», а не для общего «User-agent: *», чтобы не сбивать с толку роботов других поисковиков, которые эту директиву не поддерживают:

User-agent: Yandex Disallow: Host: www.site.ru 

либо

User-agent: Yandex Disallow: Host: site.ru 

либо

User-agent: Yandex Disallow: Host: https://site.ru 

либо

User-agent: Yandex Disallow: Host: https://www.site.ru 

в зависимости от того, что для вас оптимальнее (с www или без), а так же в зависимости от протокола.

Указываем или скрываем путь до карты сайта sitemap.xml в файле robots

Директива Sitemap указывает на местоположение файла карты сайта (обычно он называется Sitemap.xml, но не всегда). В качестве параметра указывается путь к этому файлу, включая http:// (т.е. его Урл).Благодаря этому поисковый робот сможете без труда его найти. Например:

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

Раньше файл карты сайта хранили в корне сайта, но сейчас многие его прячут внутри других директорий, чтобы ворам контента не давать удобный инструмент в руки. В этом случае путь до карты сайта лучше в роботс.тхт не указывать. Дело в том, что это можно с тем же успехом сделать через панели поисковых систем (Я.Вебмастер, Google.Вебмастер, панель Майл.ру), тем самым «не паля» его местонахождение.

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

Проверка robots.txt в Яндекс и Гугл вебмастере

Как я уже упоминал, разные поисковые системы некоторые директивы могут интерпритировать по разному. Поэтому имеет смысл проверять написанный вами файл роботс.тхт в панелях для вебмастеров обоих систем. Как проверять?

  1. Зайти в инструменты проверки Яндекса и Гугла.
  2. Убедиться, что в панель вебмастера загружена версия файла с внесенными вами изменениями. В Яндекс вебмастере загрузить измененный файл можно с помощью показанной на скриншоте иконки:

    Настройка robots txt

    В Гугл Вебмастере нужно нажать кнопку «Отправить» (справа под списком директив роботса), а затем в открывшемся окне выбрать последний вариант нажатием опять же на кнопку «Отправить»:

    Настройка robots txt

  3. Набрать список адресов страниц своего сайта (по Урлу в строке), которые должны индексироваться, и вставить их скопом (в Яндексе) или по одному (в Гугле) в расположенную снизу форму. После чего нажать на кнопку «Проверить».

    Настройка robots txt

    Если возникли нестыковки, то выяснить причины, внести изменения в robots.txt, загрузить обновленный файл в панель вебмастеров и повторить проверку. Все ОК?

    Настройка robots txt

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

Причины ошибок выявляемых при проверке файла роботс.тхт

  1. Файл должен находиться в корне сайта, а не в какой-то папке (это не .htaccess, и его действия распространяются на весь сайт, а не на каталог, в котором его поместили), ибо поисковый робот его там искать не будет.
  2. Название и расширение файла robots.txt должно быть набрано в нижнем регистре (маленькими) латинскими буквами.
  3. В названии файла должна быть буква S на конце (не robot.txt, как многие пишут)
  4. Часто в User-agent вместо звездочки (означает, что этот блок robots.txt адресован всем ботам) оставляют пустое поле. Это не правильно и * в этом случае обязательна
    User-agent: * Disallow: /
  5. В одной директиве Disallow или Allow можно прописывать только одно условие на запрет индексации директории или файла. Так нельзя:
    Disallow: /feed/ /tag/ /trackback/

    Для каждого условия нужно добавить свое Disallow:

    Disallow: /feed/ Disallow: /tag/ Disallow: /trackback/
  6. Довольно часто путают значения для директив и пишут:
    User-agent: / Disallow: Yandex

    вместо

    User-agent: Yandex Disallow: /
  7. Порядок следования Disallow (Allow) не важен — главное, чтобы была четкая логическая цепь
  8. Пустая директива Disallow означает то же, что «Allow: /»
  9. Нет смысла прописывать директиву sitemap под каждым User-agent, если будете указывать путь до карты сайта (читайте об этом ниже), то делайте это один раз, например, в самом конце.
  10. Директиву Host лучше писать под отдельным «User-agent: Yandex», чтобы не смущать ботов ее не поддерживающих

Мета-тег Robots — помогает закрыть дубли контента при индексации сайта

Существует еще один способ настроить (разрешить или запретить) индексацию отдельных страниц вебсайта, как для Яндекса, так и для Гугл. Причем для Google этот метод гораздо приоритетнее описанного выше. Поэтому, если нужно наверняка закрыть страницу от индексации этой поисковой системой, то данный мета-тег нужно будет прописывать в обязательном порядке.

Для этого внутри тега «HEAD» нужной вебстраницы дописывается МЕТА-тег Robots с нужными параметрами, и так повторяется для всех документов, к которым нужно применить то или иное правило (запрет или разрешение). Выглядеть это может, например, так:

<html> <head> <meta name="robots" content="noindex,nofollow"> <meta name="description" content="Эта страница ...."> <title>...</title> </head> <body> ... 

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

Существуют только две пары параметров у метатега robots: [no]index и [no]follow:

  1. Index — указывают, может ли робот проводить индексацию данного документа
  2. Follow — может ли он следовать по ссылкам, найденным в этом документе

Значения по умолчанию (когда этот мета-тег для страницы вообще не прописан) – «index» и «follow». Есть также укороченный вариант написания с использованием «all» и «none», которые обозначают активность обоих параметров или, соответственно, наоборот: all=index,follow и none=noindex,nofollow.

Более подробные объяснения можно найти, например, в хелпе Яндекса:

Настройка robots txt

Для блога на WordPress вы сможете настроить мета-тег Robots, например, с помощью плагина All in One SEO Pack. Если используете другие плагины или другие движки сайта, то гуглите на тему прописывания для нужных страниц meta name=»robots».

Как создать правильный роботс.тхт?

Ну все, с теорией покончено и пора переходить к практике, а именно к составлению оптимальных robots.txt. Как известно, у проектов, созданных на основе какого-либо движка (Joomla, WordPress и др), имеется множество вспомогательных объектов не несущих никакой информативной нагрузки.

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

Кроме того, следует стремиться к уникальности контента на своем проекте и не следует допускать полного или даже частичного дублирования контента (информационного содержимого). Дублирование может возникнуть в том случае, если один и тот же материал будет доступен по разным адресам (URL).

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

Замечательный инструмент для борьбы с дублями контента — поисковик просто не будет индексировать страницу, если в Canonical прописан другой урл. Например, для такой страницы https://ktonanovenkogo.ru/page/2 моего блога (страницы с пагинацией) Canonical указывает на https://ktonanovenkogo.ru и никаких проблем с дублированием тайтлов возникнуть не должно.

<link rel="canonical" href="https://ktonanovenkogo.ru/" />

Но это я отвлекся…

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

Например, в WordPress страницы с очень похожим содержимым могут попасть в индекс поисковиков, если разрешена индексация и содержимого рубрик, и содержимого архива тегов, и содержимого временных архивов. Но если с помощью описанного выше мета-тега Robots создать запрет для архива тегов и временного архива (можно теги оставить, а запретить индексацию содержимого рубрик), то дублирования контента не возникнет. Как это сделать описано по ссылке приведенной чуть выше (на плагин ОлИнСеоПак)

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

Теперь давайте рассмотрим конкретные примеры роботса, предназначенного для разных движков — Joomla, WordPress и SMF. Естественно, что все три варианта, созданные для разных CMS, будут существенно (если не сказать кардинально) отличаться друг от друга. Правда, у всех у них будет один общий момент, и момент этот связан с поисковой системой Яндекс.

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

Для нее советуют использовать отдельный блог User-agent, предназначенный только для Яндекса (User-agent: Yandex). Это связано с тем, что остальные поисковые системы могут не понимать Host и, соответственно, ее включение в запись User-agent, предназначенную для всех поисковиков (User-agent: *), может привести к негативным последствиям и неправильной индексации.

Как обстоит дело на самом деле — сказать трудно, ибо алгоритмы работы поиска — это вещь в себе, поэтому лучше сделать так, как советуют. Но в этом случае придется продублировать в директиве User-agent: Yandex все те правила, что мы задали User-agent: *. Если вы оставите User-agent: Yandex с пустым Disallow:, то таким образом вы разрешите Яндексу заходить куда угодно и тащить все подряд в индекс.

Robots для WordPress

Не буду приводить пример файла, который рекомендуют разработчики. Вы и сами можете его посмотреть. Многие блогеры вообще не ограничивают ботов Яндекса и Гугла в их прогулках по содержимому движка WordPress. Чаще всего в блогах можно встретить роботс, автоматически заполненный плагином Google XML Sitemaps.

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

Мой вариант этого файла вы можете сами посмотреть. Он старый, давно не менялся, но я стараюсь следовать принципу «не чини то, что не ломалось», а вам уже решать: использовать его, сделать свой или еще у кого-то подсмотреть. У меня там еще запрет индексации страниц с пагинацией был прописан до недавнего времени (Disallow: */page/), но недавно я его убрал, понадеясь на Canonical, о котором писал выше.

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

Приведу две крайности:

  1. Тут можно найти мегафайлище с подробными пояснениями (символом # отделяются комментарии, которые в реальном файле лучше будет удалить):
    User-agent: * # общие правила для роботов, кроме Яндекса и Google,  # т.к. для них правила ниже Disallow: /cgi-bin # папка на хостинге Disallow: /? # все параметры запроса на главной Disallow: /wp- # все файлы WP: /wp-json/, /wp-includes, /wp-content/plugins Disallow: /wp/ # если есть подкаталог /wp/, где установлена CMS (если нет,  # правило можно удалить) Disallow: *?s= # поиск Disallow: *&s= # поиск Disallow: /search/ # поиск Disallow: /author/ # архив автора Disallow: /users/ # архив авторов Disallow: */trackback # трекбеки, уведомления в комментариях о появлении открытой  # ссылки на статью Disallow: */feed # все фиды Disallow: */rss # rss фид Disallow: */embed # все встраивания Disallow: */wlwmanifest.xml # xml-файл манифеста Windows Live Writer (если не используете,  # правило можно удалить) Disallow: /xmlrpc.php # файл WordPress API Disallow: *utm= # ссылки с utm-метками Disallow: *openstat= # ссылки с метками openstat Allow: */uploads # открываем папку с файлами uploads  User-agent: GoogleBot # правила для Google (комментарии не дублирую) Disallow: /cgi-bin Disallow: /? Disallow: /wp- Disallow: /wp/ Disallow: *?s= Disallow: *&s= Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: */wlwmanifest.xml Disallow: /xmlrpc.php Disallow: *utm= Disallow: *openstat= Allow: */uploads Allow: /*/*.js # открываем js-скрипты внутри /wp- (/*/ - для приоритета) Allow: /*/*.css # открываем css-файлы внутри /wp- (/*/ - для приоритета) Allow: /wp-*.png # картинки в плагинах, cache папке и т.д. Allow: /wp-*.jpg # картинки в плагинах, cache папке и т.д. Allow: /wp-*.jpeg # картинки в плагинах, cache папке и т.д. Allow: /wp-*.gif # картинки в плагинах, cache папке и т.д. Allow: /wp-admin/admin-ajax.php # используется плагинами, чтобы не блокировать JS и CSS  User-agent: Yandex # правила для Яндекса (комментарии не дублирую) Disallow: /cgi-bin Disallow: /? Disallow: /wp- Disallow: /wp/ Disallow: *?s= Disallow: *&s= Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: */wlwmanifest.xml Disallow: /xmlrpc.php 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 # Яндекс рекомендует не закрывать  # от индексирования, а удалять параметры меток,  # Google такие правила не поддерживает Clean-Param: openstat # аналогично  # Укажите один или несколько файлов Sitemap (дублировать для каждого User-agent # не нужно). Google XML Sitemap создает 2 карты сайта, как в примере ниже. Sitemap: http://site.ru/sitemap.xml Sitemap: http://site.ru/sitemap.xml.gz  # Укажите главное зеркало сайта, как в примере ниже (с WWW / без WWW, если HTTPS # то пишем протокол, если нужно указать порт, указываем). Команду Host понимает # Яндекс и Mail.RU, Google не учитывает. Host: www.site.ru 
  2. А вот тут можно взять на вооружение пример минимализма:
    User-agent: *  Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php Host: https://site.ru Sitemap: https://site.ru/sitemap.xml

Истина, наверное, лежит где-то посредине. Еще не забудьте прописать мета-тег Robots для «лишних» страниц, например, с помощью чудесного плагина — All in One SEO Pack. Он же поможет и Canonical настроить.

ktonanovenkogo.ru

Зачем нужна настройка robots.txt?

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

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

  1. Поисковый робот будет считывать весь сайт, что «подорвет» краулинговый бюджет. Краулинговый бюджет — это число страниц, которые поисковый робот способен обойти за определенный промежуток времени.

    Без файла robots, поисковик получит доступ к черновым и скрытым страницам, к сотням страниц, используемых для администрирования CMS. Он их проиндексирует, а когда дело дойдет до нужных страниц, на которых представлен непосредственный контент для посетителей, «закончится» краулинговый бюджет.

  2. В индекс может попасть страница входа на сайт, другие ресурсы администратора, поэтому злоумышленник сможет легко их отследить и провести ddos атаку или взломать сайт.

Как поисковые роботы видят сайт с robots.txt и без него:

Настройка Robots.txt

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

Идеальный robots.txt

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

User-agent

User-agent — определяет поискового робота, который обязан следовать описанным в файле инструкциям. Если необходимо обратиться сразу ко всем, то используется значок *. Также можно обратиться к определенному поисковому роботу. Например, Яндекс и Google:

Google и Яндекс

Disallow

С помощью этой директивы, робот понимает какие файлы и папки индексировать запрещено. Если вы хотите, чтобы весь ваш сайт был открыт для индексации оставьте значение Disallow пустым. Чтобы скрыть весь контент на сайте после Disallow поставьте “/”.

Мы можем запретить доступ к определенной папке, файлу или расширению файла. В нашем примере, мы обращаемся ко всем поисковым роботам, закрываем доступ к папке bitrix, search и расширению pdf.

Dissalow

Allow

Allow принудительно открывает для индексирования страницы и разделы сайта. На примере выше мы обращаемся к поисковому роботу Google, закрываем доступ к папке bitrix, search и расширению pdf. Но в папке bitrix мы принудительно открываем 3 папки для индексирования: components, js, tools.  

Assalow

Host — зеркало сайта

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

Host — одно из самых важных правил. Если прописано данное правило, то робот поймет, какое из зеркал сайта стоит учитывать для индексации. Данная директива необходима для роботов Яндекса и Mail.ru. Другие роботы это правило будут игнорировать. Host прописывается только один раз!

Для протоколов «https://» и «http://», синтаксис в файле robots.txt будет разный.

https и http

Sitemap — карта сайта

Карта сайта — это форма навигации по сайту, которая используется для информирования поисковых систем о новых страницах. С помощью директивы sitemap, мы «насильно» показываем роботу, где расположена карта.

Карта сайта

Символы, применяемые в файле: «/, *, $, #».

  • Слэш «/», скрывает от обнаружения различные страницы сайта.
  • Звездочка «*» применяется для обозначения любой последовательности символов в файле.
  • Знак доллара «$» сдерживает действия знака звездочки. С помощью него, можно запретить содержимое папки, но адрес который содержит папка, разрешить.
  • Решетка «#» применяется для комментирования. Робот не учитывает эти записи при сканировании сайта.

После того как вы разместили Robots.txt на своем сайте, вам необходимо добавить и проверить его в вебмастере Яндекса и Google.

Проверка Яндекса:

  1. Перейдите по ссылке https://webmaster.yandex.ru/tools/robotstxt/.
  2. Выберите: Настройка индексирования — Анализ robots.txt.

Проверка Google:

  1. Перейдите по ссылке https://support.google.com/webmasters/answer/6062598 .
  2. Выберите: Сканирование — Инструмент проверки файла robots.txt.

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

В заключение приведу 6 главных рекомендаций по работе с файлом Robots.txt:

  1. Содержимое файла необходимо писать прописными буквами.
  2. В директиве Disallow нужно указывать только один файл или директорию.
  3. Строка «User-agent» не должна быть пустой.
  4. User-agent всегда должна идти перед Disallow.
  5. Не стоит забывать прописывать слэш, если нужно запретить индексацию директории.
  6. Перед загрузкой файла на сервер, обязательно нужно проверить его на наличие синтаксических и орфографических ошибок.

Успехов вам!

www.obrazstroy.ru

Самый простой Robots.txt

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

Если у директивы Disallow не стоит наклонный слеш в конце, то разрешены все страницы для индексации.

Такая директива полностью запрещает сайт к индексации:

User-agent — обозначает для кого предназначены директивы, звёздочка обозначает что для всех ПС, для Яндекса указывают User-agent: Yandex.

В справке Яндекса написано, что его поисковые роботы обрабатывают User-agent: *, но если присутствует User-agent: Yandex, User-agent: * игнорируется.

Директивы Disallow и Allow

Существуют две основные директивы:

Disallow – запретить

Allow – разрешить

Пример: На блоге мы запретили индексировать папку /wp-content/ где находятся файлы плагинов, шаблон и.т.п. Но так же там находятся изображения, которые должны быть проиндексированы ПС, для участия в поиске по картинкам. Для этого надо использовать такую схему:

Порядок использования директив  имеет значение для Яндекса, если они распространяются на одни страницы или папки. Если вы укажите вот так:

Изображения не будут загружаться роботом Яндекса с каталога /uploads/, потому что исполняется первая директива, которая запрещает весь доступ к папке wp-content.

Google относится проще и выполняет все директивы файла robots.txt, вне зависимости от их расположения.

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

Disallow: /about  Запретит доступ ко всему каталогу site.ru/about/, так же не будут индексироваться страницы которые содержат about — site.ru/about.html, site.ru/aboutlive.html и.т.п.

Disallow: /about/ Запретит индексацию роботам страниц в каталоге site.ru/about/, а страницы по типу site.ru/about.html и.т.п. будут доступны к индексации.

Регулярные выражения в robots.txt

Поддерживается два символа, это:

* — подразумевает любой порядок символов.

Пример:

Disallow: /about* запретит доступ ко всем страницам, которые содержат about, в принципе и без звёздочки такая директива будет так же работать. Но в некоторых случаях это выражение не заменимо. Например, в одной категории имеются страницы с .html на конце и без, чтобы закрыть от индексации все страницы которые содержат html, прописываем вот такую директиву:

Теперь страницы site.ru/about/live.html закрыта от индексации, а страница site.ru/about/live открыта.

Ещё пример по аналогии:

Все страницы будут закрыты, кроме страниц которые заканчиваются на .html

$ — обрезает оставшуюся часть и обозначает конец строки.

Пример:

Disallow: /about — Эта директива robots.txt запрещает индексировать все страницы, которые начинаются с about, так же идёт запрет на страницы в каталоге /about/.

Добавив в конце символ доллара — Disallow: /about$ мы сообщим роботам, что нельзя индексировать только страницу /about, а каталог /about/, страницы /aboutlive и.т.п. можно индексировать.

Директива Sitemap

В этой директиве указывается путь к Карте сайта, в таком виде:

Директива Host

Она предназначена только для Яндекса, потому что он с помощью неё определяет главные зеркала сайта и склеивает их по ней. Про склейку сайтов, в обеих поисковых системах, читайте в моём посте — Как я склеивал сайт в Яндексе и Google.

Указывается в таком виде:

Без http://, наклонных слешей и тому подобных вещей. Если у вас главное зеркало сайта с www, то пишите:

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

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

Скрытый текст

Это так сказать базовый вариант robots.txt для wordpress. Здесь присутствует два User-agent-a – один для всех и второй для Яндекса, где указывается директива Host.

Мета-теги robots

Существует возможность закрыть от индексации страницу или сайт не только файлом robots.txt, это можно сделать при помощи мета-тега.

Прописывать его надо в теге <head> и этот мета тег запретит индексировать сайт. В WordPress существуют плагины, которые позволяют выставлять такие мета теги, например – Platinum Seo Pack. С помощью него можно закрыть от индексации любую страницу, он использует мета-теги.

Директива Crawl-delay

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

Таймаут между загрузкой двух страниц будет равен 5 секундам. Чтобы уменьшить нагрузку на сервер, обычно выставляют 15-20 секунд. Это директива нужны для больших, часто обновляемых сайтов, на которых поисковые боты просто «живут».

Для обычных сайтов/блогов эта директива не нужна, но можно таким образом ограничить поведение других не актуальных поисковых роботов (Rambler, Yahoo, Bing) и.т.п. Ведь они тоже заходят на сайт и индексируют его, создавая тем самым нагрузку на сервер.

cospi.ru


You May Also Like

About the Author: admind

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Adblock
detector