Файл робот txt. Роботы яндекса

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

Находится данный файл Робота в корневом каталоге вашего сайта и открывается/редактируется простым блокнотом, я рекомендую Notepad++. Для тех, кто не любит читать — есть ВИДЕО, смотрите в конце статьи 😉

Зачем нужен robots.txt

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

  • Служебные файлы и папки CMS
  • Дубликаты
  • Документы, которые не несут пользу для пользователя
  • Не уникальные страницы

Разберем конкретный пример:

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

Поэтому обязательно получаемся файлом robots.txt, чтобы в выдачу не попадал мусор. Не забываем, что файл должен открываться по адресу http://site.ru/robots.txt.

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

User-agent. Это обращение к конкретному роботу поисковой системы или ко всем роботам. Если прописывается конкретное название робота, например «YandexMedia», то общие директивы user-agent не используются для него. Пример написания:

User-agent: YandexBot Disallow: /cart # будет использоваться только основным индексирующим роботом Яндекса

Disallow/Allow. Это запрет/разрешение индексации конкретного документа или разделу. Порядок написания не имеет значения, но при 2 директивах и одинаковом префиксе приоритет отдается «Allow». Считывает поисковый робот их по длине префикса, от меньшего к большему. Если вам нужно запретить индексацию страницы — просто введи относительный путь до нее (Disallow: /blog/post-1).

User-agent: Yandex Disallow: / Allow: /articles # Запрещаем индексацию сайта, кроме 1 раздела articles

Регулярные выражения с * и $. Звездочка означает любую последовательность символов (в том числе и пустую). Знак доллара означает прерывание. Примеры использования:

Disallow: /page* # запрещает все страницы, конструкции http://site.ru/page Disallow: /arcticles$ # запрещаем только страницу http://site.ru/articles, разрешая страницы http://site.ru/articles/new

Директива Sitemap. Если вы используете – то в robots.txt она должна указываться так:

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

Директива Host. Как вам известно у сайтов есть зеркала (читаем, ). Данное правило указывает поисковому боту на главное зеркало вашего ресурса. Относится к Яндексу. Если у вас зеркало без WWW, то пишем:

Host: site.ru

Crawl-delay. Задает задержу (в секундах) между скачками ботом ваших документов. Прописывается после директив Disallow/Allow.

Crawl-delay: 5 # таймаут в 5 секунд

Clean-param. Указывает поисковому боту, что не нужно скачивать дополнительно дублирующую информацию (идентификаторы сессий, рефереров, пользователей). Прописывать Clean-param следует для динамических страниц:

Clean-param: ref /category/books # указываем, что наша страница основная, а http://site.ru/category/books?ref=yandex.ru&id=1 это та же страница, но с параметрами

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

User-agent: Yandex Disallow: /cart Allow: /cart/images Sitemap: http://site.ru/sitemap.xml Host: site.ru Crawl-delay: 2

Мета-тег robots и как он прописывается

Данный вариант запрета страниц лучше учитывается поисковой системой Google. Яндекс одинаково хорошо учитывает оба варианта.

Директив у него 2: follow/nofollow и index/noindex . Это разрешение/запрет перехода по ссылкам и разрешение/запрет на индексацию документа. Директивы можно прописывать вместе, смотрим пример ниже.

Для любой отдельной страницы вы можете прописать в теге следующее:

Правильные файлы robots.txt для популярных CMS

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

Ниже вы можете увидеть мой вариант с данного Seo блога.

User-agent: Yandex Disallow: /wp-content/uploads/ Allow: /wp-content/uploads/*/*/ Disallow: /wp-login.php Disallow: /wp-register.php Disallow: /xmlrpc.php Disallow: /template.html Disallow: /cgi-bin Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /wp-trackback Disallow: /wp-feed Disallow: /wp-comments Disallow: */trackback Disallow: */feed Disallow: */comments Disallow: /tag Disallow: /archive Disallow: */trackback/ Disallow: */feed/ Disallow: */comments/ Disallow: /?feed= Disallow: /?.php Disallow: /wp-register.php Disallow: /xmlrpc.php Disallow: /template.html Disallow: /cgi-bin Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins Disallow: /wp-content/cache Disallow: /wp-content/themes Disallow: /wp-trackback Disallow: /wp-feed Disallow: /wp-comments Disallow: */trackback Disallow: */feed Disallow: */comments Disallow: /tag Disallow: /archive Disallow: */trackback/ Disallow: */feed/ Disallow: */comments/ Disallow: /?feed= Disallow: /?.xml

Трэкбэки запрещаю потому что это дублирует кусок статьи в комментах. А если трэкбэков много — вы получите кучу одинаковых комментариев.

Служебные папки и файлы любой CMS я стараюсь я закрываю, т.к. не хочу чтобы они попадали в индекс (хотя поисковики уже и так не берут, но хуже не будет).

Фиды (feed) стоит закрывать, т.к. это частичные либо полные дубли страниц.

Теги закрываем, если мы их не используем или нам лень их оптимизировать.

Примеры для других CMS

Чтобы скачать правильный robots для нужной CMS просто кликните по соответствующей ссылке.

Robots.txt для сайта - это индексный текстовый файл в кодировке UTF-8.

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

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

Файл действителен для протоколов http, https, ftp, а также имеет «силу» только в пределах хоста/протокола/номера порта, на котором размещен.

Где находится robots.txt на сайте?

У файла robots.txt может быть только одно расположение - корневой каталог на хостинге. Выглядит это примерно вот так: http://vash-site.xyz/robots.txt

Директивы файла robots txt для сайта

Обязательными составляющими файла robots.txt для сайта являются правило Disallow и инструкция User-agent. Есть и второстепенные правила.

Правило Disallow

Disallow - это правило, с помощью которого поисковому роботу сообщается информация о том, какие страницы сканировать нет смысла. И сразу же несколько конкретных примеров применения этого правила:

Пример 1 - разрешено индексировать весь сайт:

Пример 2 - полностью запретить индексацию сайта:

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

Пример 6 - как в robots txt закрыть от индексации файлы конкретного расширения (в данном случае - .gif):

Звездочка перед.gif$ сообщает, что имя файла может быть любым, а знак $ сообщает о конце строки. Т.е. такая «маска» запрещает сканирование вообще всех GIF-файлов.

Правило Allow в robots txt

Правило Allow все делает с точностью до наоборот - разрешает индексирование файла/папки/страницы.

И сразу же конкретный пример:

Мы с вами уже знаем, что с помощью директивы Disallow: / мы можем закрыть сайт от индексации robots txt. В то же время у нас есть правило Allow: /catalog, которое разрешает сканирование папки /catalog. Поэтому комбинацию этих двух правил поисковые роботы будут воспринимать как «запрещено сканировать сайт, за исключением папки /catalog»

Сортировка правил и директив Allow и Disallow производится по возрастанию длины префикса URL и применяется последовательно. Если для одной и той же страницы подходит несколько правил, то робот выбирает последнее подходящее из списка.

Рассмотрим 2 ситуации с двумя правилами, которые противоречат друг другу - одно правило запрещает индексировать папки /content, а другое - разрешает.

В данном случае будет приоритетнее директива Allow, т.к. оно находится ниже по списку:

А вот здесь приоритетным является директива Disallow по тем же причинам (ниже по списку):

User-agent в robots txt

User-agent — правило, являющееся «обращением» к поисковому роботу, мол, «список рекомендаций специально для вас» (к слову, списков в robots.txt может быть несколько - для разных поисковых роботов от Google и Яндекс).

Например, в данном случае мы говорим «Эй, Googlebot, иди сюда, тут для тебя специально подготовленный список рекомендаций», а он такой «ОК, специально для меня - значит специально для меня» и другие списки сканировать не будет.

Правильный robots txt для Google (Googlebot)

Примерно та же история и с поисковым ботом Яндекса. Забегая вперед, список рекомендаций для Яндекса почти в 100% случаев немного отличается от списка для других поисковых роботов (чем - расскажем чуть позже). Но суть та же: «Эй, Яндекс, для тебя отдельный список» - «ОК, сейчас изучим его».

Т.е. если в одном и том же robots.txt есть 3 списка с User-agent: *, User-agent: Googlebot и User-agent: Yandex, это значит, первый является «одним для всех», за исключением Googlebot и Яндекс, т.к. для них есть «личные» списки.

Sitemap

Правило Sitemap - расположение файла с XML-картой сайта, в которой содержатся адреса всех страниц, являющихся обязательными к сканированию. Как правило, указывается адрес вида http://site.ua/sitemap.xml.

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

Правило Sitemap должно быть вписано в Robots.txt следующим образом:

Директива Host

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

«Зеркалом сайта» принято называть либо точную, либо почти точную «копию» сайта, которая доступна по другому адресу.

Адрес основного зеркала обязательно должно быть указано следующим образом:

Для сайтов, работающих по http - Host: site.ua или Host: http://site.ua (т.е. http:// пишется по желанию)

Для сайтов, работающих по https - Host: https://site.ua (т.е. https:// прописывается в обязательном порядке)

Пример директивы host в robots txt для сайта на протоколе HTTPS:

Crawl delay

В отличие от предыдущих, параметр Crawl-delay уже не является обязательным. Основная его задача - подсказать поисковому роботу, в течение скольких секунд будут грузиться страницы. Обычно применяется в том случае, если Вы используете слабые сервера. Актуален только для Яндекса.

Clean param

С помощью директивы Clean-param можно бороться с get-параметрами, чтобы не происходило дублирование контента, т.к. один и тот же контент бывает доступен по разным динамическим ссылкам (это те, которые со знаками вопроса). Динамические ссылки могут генерироваться сайтом в том случае, когда используются различные сортировки, применяются идентификаторы сессий и т.д.

Например, один и тот же контент может быть доступен по трем адресам:

www.site.com/catalog/get_phone.ua?ref=page_1&phone_id=1

www.site.com/catalog/get_phone.ua?ref=page_2&phone_id=1

www.site.com/catalog/get_phone.ua?ref=page_3&phone_id=1

В таком случае директива Clean-param оформляется вот так:

Т.е. после двоеточия прописывается атрибут ref, указывающий на источник ссылки, и только потом указывается ее «хвост» (в данном случае - /catalog/get_phone.ua).

Самые частые вопросы

Как в robots.txt запретить индексацию?

Для этих целей придумано правило Disallow: т.е. копируем ссылку на документ/файл, который нужно закрыть от индексации, вставляем ее после двоеточия:

Disallow: http://your-site.xyz/privance.html

Disallow: http://your-site.xyz/foord.doc

Disallow: http://your-site.xyz/barcode.jpg

А затем удаляете адрес домена (в данном случае удалить надо вот эту часть - http://your-site.xyz). После удаления у нас останется ровно то, что и должно остаться:

Disallow: /privance.html

Disallow: /foord.doc

Disallow: /barcode.jpg

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

Disallow: /*.html

Disallow: /*.doc

Disallow: /*.jpg

Как в robots.txt указать главное зеркало?

Для этих целей придумана директива Host. Т.е. если адреса http://your-site.xyz и http://yoursite.com являются «зеркалами» одного и того же сайта, то одно из них необходимо указать в директиве Host. Пусть основным зеркалом будет http://your-site.xyz. В этом случае правильными вариантами будут следующие:

Если сайт работает по https-протоколу, то нужно делать только так:

User-agent: Yandex

Disallow: /privance.html

Disallow: /foord.doc

Disallow: /barcode.jpg

Host: https://your-site.xyz

Если сайт работает по http-протоколу, то оба приведенных ниже варианта будут верными:

User-agent: Yandex

Disallow: /privance.html

Disallow: /foord.doc

Disallow: /barcode.jpg

Host: http://your-site.xyz

User-agent: Yandex

Disallow: /privance.html

Disallow: /foord.doc

Disallow: /barcode.jpg

Host: your-site.xyz

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

Простейший пример правильного robots.txt

В таком виде файл robots.txt можно разместить практически на любом сайте (с мельчайшими корректировками).

Давайте теперь разберем, что тут есть.

  1. Здесь 2 списка правил - один «персонально» для Яндекса, другой - для всех остальных поисковых роботов.
  2. Правило Disallow: пустое, а значит никаких запретов на сканирование нет.
  3. В списке для Яндекса присутствует директива Host с указанием основного зеркала, а также, ссылка на карту сайта.

НО… Это НЕ значит, что нужно оформлять robots.txt именно так. Правила должны быть прописаны строго индивидуально для каждого сайта. Например, нет смысла индексировать «технические» страницы (страницы ввода логина-пароля, либо тестовые страницы, на которых отрабатывается новый дизайн сайта, и т.д.). Правила, кстати, зависят еще и от используемой CMS.

Закрытый от индексации сайт - как выглядит robots.txt?

Даем сразу же готовый код, который позволит запретить индексацию сайта независимо от CMS:

Как указать главное зеркало для сайта на https robots.txt?

Очень просто:

Host: https://your-site.xyz

ВАЖНО!!! Для https-сайтов протокол должен указываться строго обязательно!

Наиболее частые ошибки в robots.txt

Специально для Вас мы приготовили подборку самых распространенных ошибок, допускаемых в robots.txt. Почти все эти ошибки объединяет одно - они допускаются по невнимательности.

1. Перепутанные инструкции:

Правильный вариант:

2. В один Disallow вставляется куча папок:

В такой записи робот может запутаться. Какую папку нельзя индексировать? Первую? Последнюю? Или все? Или как? Или что? Одна папка = одно правило Disallow и никак иначе.

3. Название файла допускается только одно - robots.txt, причем все буквы маленькие. Имена Robots.txt, ROBOTS.TXT и т.п. не допускаются.

4. Правило User-agent запрещено оставлять пустым. Либо указываем имя поискового робота (например, для Яндекса), либо ставим звездочку (для всех остальных).

5. Мусор в файле (лишние слэши, звездочки и т.д.).

6. Добавление в файл полных адресов скрываемых страниц, причем иногда даже без правила Disallow.

Неправильно:

http://mega-site.academy/serrot.html

Тоже неправильно:

Disallow: http://mega-site.academy/serrot.html

Правильно:

Disallow: /serrot.html

Онлайн-проверка файла robots.txt

Существует несколько способов проверки файла robots.txt на соответствие общепринятому в интернете стандарту.

Способ 1. Зарегистрироваться в панелях веб-мастера Яндекс и Google. Единственный минус - придется покопаться, чтоб разобраться с функционалом. Далее вносятся рекомендованные изменения и готовый файл закачивается на хостинг.

Способ 2. Воспользоваться онлайн-сервисами:

Https://services.sl-team.ru/other/robots/

Https://technicalseo.com/seo-tools/robots-txt/

Http://tools.seochat.com/tools/robots-txt-validator/

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

Google Вебмастерс (Search Console Google): заходим в аккаунт, если в нем сайт не подтвержден - подтверждаем, далее переходим на Сканирование -> Инструмент проверки файла robots.txt.

Здесь можно:

  • моментально обнаружить все ошибки и потенциально возможные проблемы,
  • сразу же «на месте» внести поправки и проверить на ошибки еще раз (чтоб не перезагружать файл на сайт по 20 раз)
  • проверить правильность запретов и разрешений индексирования страниц.

Является аналогом предыдущего, за исключением:

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

Готовые решения для самых популярных CMS

Правильный robots.txt для Wordpress

Disallow: /cgi-bin # классика жанра

Disallow: /? # любые параметры запроса на главной

Disallow: /wp- # все файлы WP: /wp-json/, /wp-includes, /wp-content/plugins

Disallow: *?s= # поиск

Disallow: *&s= # поиск

Disallow: /search # поиск

Disallow: *?attachment_id= # страница вложения. Вообще-то на ней редирект...

Disallow: */feed # все фиды

Disallow: */rss # rss фид

Disallow: */embed # все встраивания

Disallow: */page/ # все виды пагинации

Allow: */uploads # открываем uploads

Allow: /*/*.js # внутри /wp- (/*/ - для приоритета)

Allow: /*/*.css # внутри /wp- (/*/ - для приоритета)

Allow: /wp-*.png # картинки в плагинах, cache папке и т.д.

Allow: /wp-*.jpg # картинки в плагинах, cache папке и т.д.

Allow: /wp-*.jpeg # картинки в плагинах, cache папке и т.д.

Allow: /wp-*.gif # картинки в плагинах, cache папке и т.д.

Allow: /wp-*.svg # картинки в плагинах, cache папке и т.д.

Allow: /wp-*.pdf # файлы в плагинах, cache папке и т.д.

#Disallow: /wp/ # когда WP установлен в подкаталог wp

Sitemap: http://site.ru/sitemap2.xml # еще один файл

#Sitemap: http://site.ru/sitemap.xml.gz # сжатая версия (.gz)

Host: www.site.ru # для Яндекса и Mail.RU. (межсекционная)

# Версия кода: 1.0

# Не забудьте поменять `site.ru` на ваш сайт.

Давайте разберем код файла robots txt для WordPress CMS:

Здесь мы указываем, что все правила актуальны для всех поисковых роботов (за исключением тех, для кого составлены «персональные» списки). Если список составляется для какого-то конкретного робота, то * меняется на имя робота:

User-agent: Yandex

User-agent: Googlebot

Allow: */uploads

Здесь мы осознанно даем добро на индексирование ссылок, в которых содержится /uploads. В данном случае это правило является обязательным, т.к. в движке WordPress есть директория /wp-content/uploads (в которой вполне могут содержаться картинки, либо другой «открытый» контент), индексирование которой запрещено правилом Disallow: /wp-. Поэтому с помощью Allow: */uploads мы делаем исключение из правила Disallow: /wp-.

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

Disallow: /cgi-bin - запрет на индексирование скриптов

Disallow: /feed - запрет на сканирование RSS-фида

Disallow: /trackback - запрет сканирования уведомлений

Disallow: ?s= или Disallow: *?s= - запрет на индексирование страниц внутреннего поиска сайта

Disallow: */page/ - запрет индексирования всех видов пагинации

Правило Sitemap: http://site.ru/sitemap.xml указывает Яндекс-роботу путь к файлу с xml-картой. Путь должен быть прописан полностью. Если таких файлов несколько - прописываем несколько Sitemap-правил (1 файл = 1 правило).

В строке Host: site.ru мы специально для Яндекса прописали основное зеркало сайта. Оно указывается для того, чтоб остальные зеркала индексировались одинаково. Пустая строка перед Host: является обязательной.

Где находится robots txt WordPress вы все наверное знаете - так как и в другие CMS, данный файл должен находится в корневом каталоге сайта.

Файл robots.txt для Joomla

Joomla — почти самый популярный движок у вебмастеров, т.к. не смотря на широчайшие возможности и множества готовых решений, он поставляется бесплатно. Однако, штатный robots.txt всегда имеет смысл подправить, т.к. для индексирования открыто слишком много «мусора», но картинки закрыты (это плохо).

Вот так выглядит правильный robots.txt для Joomla:

Disallow: /administrator/

Disallow: /cache/

Disallow: /components/

Disallow: /images/

Disallow: /includes/

Disallow: /installation/

Disallow: /language/

Disallow: /layouts/

Disallow: /libraries/

Disallow: /logs/

Disallow: /media/

Disallow: /modules/

Disallow: /plugins/

Disallow: /templates/

robots.txt Wix

Платформа Wix автоматически генерирует файлы robots.txt персонально для каждого сайта Wix. Т.е. к Вашему домену добавляете /robots.txt (например: www.domain.com/robots.txt) и можете спокойно изучить содержимое файла robots.txt, находящегося на Вашем сайте.

Отредактировать robots.txt нельзя. Однако с помощью noindex можно закрыть какие-то конкретные страницы от индексирования.

robots.txt для Opencart

Стандартный файл robots.txt для OpenCart:

Disallow: /*route=account/

Disallow: /*route=affiliate/

Disallow: /*route=checkout/

Disallow: /admin

Disallow: /catalog

Disallow: /download

Disallow: /export

Disallow: /system

Disallow: /*?sort=

Disallow: /*&sort=

Disallow: /*?order=

Disallow: /*&order=

Disallow: /*?limit=

Disallow: /*&limit=

Disallow: /*?filter_name=

Disallow: /*&filter_name=

Disallow: /*?filter_sub_category=

Disallow: /*&filter_sub_category=

Disallow: /*?filter_description=

Disallow: /*&filter_description=

Disallow: /*?tracking=

Disallow: /*&tracking=

Disallow: /*?page=

Disallow: /*&page=

Disallow: /wishlist

Disallow: /login

User-agent: Yandex

Disallow: /*route=account/

Disallow: /*route=affiliate/

Disallow: /*route=checkout/

Disallow: /*route=product/search

Disallow: /index.php?route=product/product*&manufacturer_id=

Disallow: /admin

Disallow: /catalog

Disallow: /download

Disallow: /export

Disallow: /system

Disallow: /*?sort=

Disallow: /*&sort=

Disallow: /*?order=

Disallow: /*&order=

Disallow: /*?limit=

Disallow: /*&limit=

Disallow: /*?tracking=

Disallow: /*&tracking=

Disallow: /*route=product/search

Disallow: /*?page=

Disallow: /*&page=

Clean-param: tracking

Clean-param: filter_name

Clean-param: filter_sub_category

Clean-param: filter_description

Disallow: /wishlist

Disallow: /login

Disallow: /index.php?route=product/manufacturer

Disallow: /index.php?route=product/compare

Disallow: /index.php?route=product/category

Host: Vash_domen

Sitemap: http://Vash_domen/sitemap.xml

robots.txt для Битрикс (Bitrix)

1. Папки /bitrix и /cgi-bin должны быть закрыты, т.к. это чисто технический «хлам», который незачем светить в поисковой выдаче.

Disallow: /bitrix

Disallow: /cgi-bin

2. Папка /search тоже не представляет интереса ни для пользователей, ни для поисковых систем. Да и образование дублей никому не нужно. Поэтому тоже ее закрываем.

Disallow: /search

Disallow: /auth/

Disallow: /auth.php

4. Материалы для печати (например, счета на оплату) тоже нет смысла светить в поисковой выдаче. Закрываем.

Disallow: /*?print=

Disallow: /*&print=

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

Disallow: /*register=yes

Disallow: /*forgot_password=yes

Disallow: /*change_password=yes

Disallow: /*login=yes

Disallow: /*logout=yes

Disallow: /*auth=yes

6. Back-адреса тоже нет смысла индексировать. Эти адреса могут образовываться, например, при просмотре фотоальбома, когда Вы сначала листаете его «вперед», а потом - «назад». В эти моменты в адресной строке вполне может появиться что-то типа матерного ругательства: ?back_url_ =%2Fbitrix%2F%2F. Ценность таких адресов равна нулю, поэтому их тоже закрываем от индексирования. Ну а в качестве бонуса - избавляемся от потенциальных «дублей» в поисковой выдаче.

Disallow: /*BACKURL=*

Disallow: /*back_url=*

Disallow: /*BACK_URL=*

Disallow: /*back_url_admin=*

7. Папку /upload необходимо закрывать строго по обстоятельствам. Если там хранятся фотографии и видеоматериалы, размещенные на страницах, то ее скрывать не нужно, чтоб не срезать дополнительный трафик. Ну а если что-то конфиденциальное - однозначно закрываем:

Disallow: /upload

Готовый файл robots.txt для Битрикс:

Allow: /search/map.php

Allow: /bitrix/templates/

Disallow: */index.php

Disallow: /*action=

Disallow: /*print=

Disallow: /*/gallery/*order=

Disallow: /*/search/

Disallow: /*/slide_show/

Disallow: /*?utm_source=

Disallow: /*ADD_TO_COMPARE_LIST

Disallow: /*arrFilter=

Disallow: /*auth=

Disallow: /*back_url_admin=

Disallow: /*BACK_URL=

Disallow: /*back_url=

Disallow: /*backurl=

Disallow: /*bitrix_*=

Disallow: /*bitrix_include_areas=

Disallow: /*building_directory=

Disallow: /*bxajaxid=

Disallow: /*change_password=

Disallow: /*clear_cache_session=

Disallow: /*clear_cache=

Disallow: /*count=

Disallow: /*COURSE_ID=

Disallow: /*forgot_password=

Disallow: /*index.php$

Disallow: /*login=

Disallow: /*logout=

Disallow: /*modern-repair/$

Disallow: /*MUL_MODE=

Disallow: /*ORDER_BY

Disallow: /*PAGE_NAME=

Disallow: /*PAGE_NAME=detail_slide_show

Disallow: /*PAGE_NAME=search

Disallow: /*PAGE_NAME=user_post

Disallow: /*PAGEN_

Disallow: /*print_course=

Disallow: /*print=

Disallow: /*register=

Disallow: /*register=yes

Disallow: /*set_filter=

Disallow: /*show_all=

Disallow: /*show_include_exec_time=

Disallow: /*show_page_exec_time=

Disallow: /*show_sql_stat=

Disallow: /*SHOWALL_

Disallow: /*sort=

Disallow: /*sphrase_id=

Disallow: /*tags=

Disallow: /access.log

Disallow: /admin

Disallow: /auth.php

Disallow: /bitrix

Disallow: /bitrix/

Disallow: /cgi-bin

Disallow: /club/$

Disallow: /club/forum/search/

Disallow: /club/gallery/tags/

Disallow: /club/group/search/

Disallow: /club/log/

Disallow: /club/messages/

Disallow: /club/search/

Disallow: /communication/blog/search.php

Disallow: /communication/forum/search/

Disallow: /communication/forum/user/

Disallow: /content/board/my/

Disallow: /content/links/my/

Disallow: /error

Disallow: /e-store/affiliates/

Disallow: /e-store/paid/detail.php

Disallow: /examples/download/download_private/

Disallow: /examples/my-components/

Disallow: /include

Disallow: /personal

Disallow: /search

Disallow: /upload

Disallow: /*/*ELEMENT_CODE=

Disallow: /*/*SECTION_CODE=

Disallow: /*/*IBLOCK_CODE

Disallow: /*/*ELEMENT_ID=

Disallow: /*/*SECTION_ID=

Disallow: /*/*IBLOCK_ID=

Disallow: /*/*CODE=

Disallow: /*/*ID=

Disallow: /*/*IBLOCK_EXTERNAL_ID=

Disallow: /*/*SECTION_CODE_PATH=

Disallow: /*/*EXTERNAL_ID=

Disallow: /*/*IBLOCK_TYPE_ID=

Disallow: /*/*SITE_DIR=

Disallow: /*/*SERVER_NAME=

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

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

robots.txt для Modx и Modx Revo

CMS Modx Revo тоже не лишена проблемы дублей. Однако, она не так сильно обострена, как в Битриксе. Теперь о ее решении.

  1. Включаем ЧПУ в настройках сайта.
  2. закрываем от индексации:

Disallow: /index.php # т.к. это дубль главной страницы сайта

Disallow: /*? # разом решаем проблему с дублями для всех страниц

Готовый файл robots.txt для Modx и Modx Revo:

Disallow: /*?id=

Disallow: /assets

Disallow: /assets/cache

Disallow: /assets/components

Disallow: /assets/docs

Disallow: /assets/export

Disallow: /assets/import

Disallow: /assets/modules

Disallow: /assets/plugins

Disallow: /assets/snippets

Disallow: /connectors

Disallow: /index.php

Disallow: /install

Disallow: /manager

Disallow: /profile

Disallow: /search

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

Выводы

Без преувеличения файл robots.txt можно назвать «поводырём для поисковых роботов Яндекс и Гугл» (разумеется, если он составлен правильно). Если файл robots txt отсутствует, то его нужно обязательно создать и загрузить на хостинг Вашего сайта. Справка Disallow правил описаны выше в этой статьей и вы можете смело их использоваться в своих целях.

Еще раз резюмируем правила/директивы/инструкции для robots.txt:

  1. User-agent — указывает, для какого именно поискового робота создан список правил.
  2. Disallow - «рекомендую вот это не индексировать».
  3. Sitemap - указывает расположение XML-карты сайта со всеми URL, которые нужно проиндексировать. В большинстве случаев карта расположена по адресу http://[ваш_сайт]/sitemap.xml.
  4. Crawl-delay — директива, указывающая период (в секундах), через который будет загружена страница сайта.
  5. Host - показывает Яндексу основное зеркало сайта.
  6. Allow - «рекомендую вот это проиндексировать, не смотря на то, что это противоречит одному из Disallow-правил».
  7. Clean-param - помогает в борьбе с get-параметрами, применяется для снижения рисков образования страниц-дублей.

Знаки при составлении robots.txt:

  1. Знак «$» для «звездочки» является «ограничителем».
  2. После слэша «/» указывается наименование файла/папки/расширения, которую нужно скрыть (в случае с Disallow) или открыть (в случае с Allow) для индексирования.
  3. Знаком «*» обозначается «любое количество любых символов».
  4. Знаком «#» отделяются какие-либо комментарии или примечания, оставленные вэб-мастером для себя, либо для кого-то другого. Поисковые роботы их не читают.

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

Robots.txt для WordPress

А зачем, собственно говоря, нужен robots.txt? Ответ все тот же – . То есть составление robots.txt – это одно из частей поисковой оптимизации сайта (кстати, очень скоро будет урок, который будет посвящен всей внутренней оптимизации сайта на WordPress. Поэтому не забудьте подписаться на RSS , чтобы не пропустить интересные материалы.).

Одна из функций данного файла – запрет индексации ненужных страниц сайта. Также в нем задается адрес и прописывается главное зеркало сайта (сайт с www или без www).

Примечание: для поисковых систем один и тот же сайт с www и без www совсем абсолютно разные сайты. Но, поняв, что содержимое этих сайтов одинаковое, поисковики “склеивают” их. Поэтому важно прописать главное зеркало сайта в robots.txt. Чтобы узнать, какое главное (с www или без www), просто наберите адрес своего сайта в браузере, к примеру, с www, если Вас автоматически перебросит на тот же сайт без www, значит главное зеркало Вашего сайта без www. Надеюсь правильно объяснил.

Было:

Стало (после перехода на сайт, www автоматически удалились, и сайт стал без www):

Так вот, этот заветный, по-моему, правильный robots.txt для WordPress Вы можете увидеть ниже.

Правильный для WordPress

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes

Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed/*/
Disallow: */feed
Disallow: /*?*
Disallow: /tag

User-agent: Yandex
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed/*/
Disallow: */feed
Disallow: /*?*
Disallow: /tag
Host: сайт
Sitemap: https://сайт/sitemap.xml.gz
Sitemap: https://сайт/sitemap.xml

Все что дано выше, Вам нужно скопировать в текстовой документ с расширением.txt, то есть, чтобы название файла было robots.txt. Данный текстовой документ Вы можете создать, к примеру, с помощью программы . Только, не забудьте, пожалуйста, изменить в последних трех строчках адрес на адрес своего сайта. Файл robots.txt должен располагаться в корне блога, то есть в той же папке, где находятся папки wp-content, wp-admin и др. .

Те, кому же лень создавать данный текстовой файл, можете просто и также там подкорректировать 3 строчки.

Хочу отметить, что в техническими частями, о которых речь пойдет ниже, себя сильно загружать не нужно. Привожу их для “знаний”, так сказать общего кругозора, чтобы знали, что и зачем нужно.

Итак, строка:

User-agent

задает правила для какого-то поисковика: к примеру “*” (звездочкой) отмечено, что правила для всех поисковиков, а то, что ниже

User-agent: Yandex

означает, что данные правила только для Яндекса.

Disallow
Здесь же Вы “засовываете” разделы, которые НЕ нужно индексировать поисковикам. К примеру, на странице у меня идет дубль статей (повторение) с обычными статьями, а дублирование страниц отрицательно сказывается на поисковом продвижении, поэтому, крайне желательно, данные секторы нужно закрыть от индексации, что мы и делаем с помощью этого правила:

Disallow: /tag

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

Host

Здесь мы задаем главное зеркало сайта, о котором я рассказывал чуть выше.

Sitemap

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

Возможные проблемы

Заходим в раздел Настройки индексирования –> Анализ robots.txt:

Уже там нажимаете на кнопку “Загрузить robots.txt с сайта”, а затем нажимаете на кнопку “Проверить”:

Если Вы увидите примерно следующее сообщение, значит у Вас правильный robots.txt для Яндекса:

Также Вы можете в “Список URL” добавить адрес любой статьи сайта, чтобы проверить не запрещает ли robots.txt индексирование данной страницы:

Как видите, никакого запрета на индексирование страницы со стороны robots.txt мы не видим, значит все в порядке:).

Надеюсь больше вопросов, типа: как составить robots.txt или как сделать правильным данный файл у Вас не возникнет. В этом уроке я постарался показать Вам правильный пример robots.txt :

До скорой встречи!

P.s. Совсем недавно я , что же интересного произошло? 🙂

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

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

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

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

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

Создание robots.txt

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

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

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.

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

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

С их помощью вы сможете создать 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 # /
# работает вместе с плагинами

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
# чистим 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: /*.css?*$
Allow: /*.js?*$
Allow: /*.jpg?*$
Allow: /*.png?*$
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: 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.

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

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

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

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

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

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

Заключение

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

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

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

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

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

Robots.txt - что это, зачем нужен и где обитает?

Итак, сперва ликбез для тех, кому данная тема незнакома совершенно.

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

Где находится robots.txt? Он размещается в корневой папке FTP сайта, и, по сути, является обычным документом в формате txt, редактирование которого можно осуществлять через любой текстовый редактор (лично я предпочитаю Notepad++). Содержимое файла роботс можно увидеть, введя в адресной строке браузера http://www.ваш-сайт.ru/robots.txt. Если, конечно, он существует.

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

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

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

1. Директива User-agent

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

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

User-agent: YandexBot

У каждого поисковика существует целый набор роботов, выполняющих те или иные функции. Роботы поисковой системы Яндекс описаны . В общем же плане имеется следующее:

  • Yandex - указание на роботов Яндекс.
  • GoogleBot - основной индексирующий робот .
  • MSNBot - основной индексирующий робот Bing.
  • Aport - роботы Aport.
  • Mail.Ru - роботы ПС Mail.

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

2. Директива Allow

Разрешает отдельные страницы раздела, если, скажем, ранее он целиком закрыт от индексации. Например:

User-agent: *
Disallow: /
Allow: /открытая-страница.html

В данном примере мы запрещаем к индексации весь сайт, кроме страницы poni.html

Служит эта директива в какой-то степени для указания на исключения из правил, заданных директивой Disallow. В случае, если таких ситуаций нет, то директива может не использоваться совсем. Она не позволяет открыть сайт для индексации, как многие думают, так как если нет запрета вида Disallow: /, то он открыт по умолчанию.

2. Директива Disallow

Является антиподом директивы Allow и закрывает от индексации отдельные страницы, разделы или сайт целиком. Являет аналогом тега noindex. Например:

User-agent: *
Disallow: /закрытая-страница.html

3. Директива Host

Используется только для Яндекса и указывает на основное зеркало сайта. Выглядит это так.

Основное зеркало без www:

Основное зеркало с www:

Host: www.site.ru

Сайт на https:

Host: https://site.ru

Нельзя записывать директиву host в файл дважды. Если же вследствие какой-то ошибки это произошло, то обрабатывается та директива, которая идет первой, а вторая - игнорируется.

4. Директива Sitemap

Используется для указания пути к XML-карте сайта sitemap.xml (если она есть). Синтаксис следующий:

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

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

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

Особенно часто встречается такая проблема при работе с каталогами и интернет-магазинами.

Скажем, у нас имеется страница:

http://www.site.ru/index.php

И эта страница в процессе работы может обрастать клонами вида.

http://www.site.ru/index.php?option=com_user_view=remind
http://www.site.ru/index.php?option=com_user_view=reset
http://www.site.ru/index.php?option=com_user_view=login

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

Clean-param: option /index.php

Синтаксис из примера, думаю, понятен:

Clean-param: # указываем директиву
option # указываем спамный параметр
/index.php # указываем костяк урла со спамным параметром

Если параметров несколько, то просто перечисляем их через амперсант(&):

http://www.site.ru/index.php?option=com_user_view=remind&size=big # урл с двумя параметрами
Clean-param: option&big /index.php # указаны два параметра через амперсант

Пример взят простой, поясняющий саму суть. Особенно спасибо этому параметру хочется сказать при работе с CMS Bitrix.

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

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

Crawl-delay: 3.5 #таймаут в 3,5 секунды

Синтаксис

  • # - используется для написания комментариев:
  • User-agent: * # директива относится ко всем роботам

  • * - означает любую последовательность символов, значение:
  • Disallow: /page* # запрет всех страниц, начинающихся на page

    Disallow: /*page # запрет всех страниц, заканчивающихся на page

    Disallow: /cgi-bin/*.aspx # запрет всех aspx страниц в папке cgi-bin

  • $ - обрезание правила, антипод знака звездочки:
  • Disallow: /page$ # будет закрыта только страница /page, а не /page.html или pageline.html

Пример файла robots.txt

С целью закрепления понимания вышеописанной структуры и правил, приведем стандартный robots txt для CMS Data Life Engine.

User-agent: * # директивы предназначены для всех поисковых систем
Disallow: /engine/go.php # запрещаем отдельные разделы и страницы
Disallow: /engine/download.php #
Disallow: /user/ #
Disallow: /newposts/ #
Disallow: /*subaction=userinfo # закрываем страницы с отдельными параметрами
Disallow: /*subaction=newposts #
Disallow: /*do=lastcomments #
Disallow: /*do=feedback #
Disallow: /*do=register #
Disallow: /*do=lostpassword #
Host: www.сайт # указываем главное зеркало сайта
Sitemap: https://сайт/sitemap.xml # указываем путь до карты сайта
User-agent: Aport # указываем направленность правил на ПС Aport
Disallow: / # предположим, не хотим мы с ними дружить

Проверка robots.txt

Как проверить robots txt на корректность составления? Стандартный вариант - валидатор Яндекса - http://webmaster.yandex.ru/robots.xml . Вводим путь до вашего файла роботс или сразу вставляем его содержимое в текстовое поле. Вводим список урлов, которые мы хотим проверить - закрыты или открыты они согласно заданным директивам - нажимаем «Проверить» и вуаля! Профит.

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

Генератор robots.txt - создание в режиме онлайн

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

Готовые файлы для популярных CMS

Файл robots.txt для сайта на 1C Битрикс

User-Agent: *
Disallow: /bitrix/
Disallow: /personal/
Disallow: /upload/
Disallow: /*login*
Disallow: /*auth*
Disallow: /*search
Disallow: /*?sort=
Disallow: /*gclid=
Disallow: /*register=
Disallow: /*?per_count=
Disallow: /*forgot_password=
Disallow: /*change_password=
Disallow: /*logout=
Disallow: /*back_url_admin=
Disallow: /*print=
Disallow: /*backurl=
Disallow: /*BACKURL=
Disallow: /*back_url=
Disallow: /*BACK_URL=
Disallow: /*ADD2BASKET
Disallow: /*ADD_TO_COMPARE_LIST
Disallow: /*DELETE_FROM_COMPARE_LIST
Disallow: /*action=BUY
Disallow: /*set_filter=y
Disallow: /*?mode=matrix
Disallow: /*?mode=listitems
Disallow: /*openstat
Disallow: /*from=adwords
Disallow: /*utm_source
Host: www.site.ru

Robots.txt для DataLife Engine (DLE)

User-agent: *
Disallow: /engine/go.php
Disallow: /engine/download.php
Disallow: /engine/classes/highslide/
Disallow: /user/
Disallow: /tags/
Disallow: /newposts/
Disallow: /statistics.html
Disallow: /*subaction=userinfo
Disallow: /*subaction=newposts
Disallow: /*do=lastcomments
Disallow: /*do=feedback
Disallow: /*do=register
Disallow: /*do=lostpassword
Disallow: /*do=addnews
Disallow: /*do=stats
Disallow: /*do=pm
Disallow: /*do=search
Host: www.site.ru
Sitemap: http://www.site.ru/sitemap.xml

Robots.txt для Joomla

User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Disallow: *print
Disallow: /*utm_source
Disallow: /*mailto*
Disallow: /*start*
Disallow: /*feed*
Disallow: /*search*
Disallow: /*users*
Host: www.site.ru
Sitemap: http://www.site.ru/sitemap.xml

Robots.txt для Wordpress

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: */trackback
Disallow: */feed
Disallow: /wp-login.php
Disallow: /wp-register.php
Host: www.site.ru
Sitemap: http://www.site.ru/sitemap.xml

Robots.txt для Ucoz

User-agent: *
Disallow: /a/
Disallow: /stat/
Disallow: /index/1
Disallow: /index/2
Disallow: /index/3
Disallow: /index/5
Disallow: /index/7
Disallow: /index/8
Disallow: /index/9
Disallow: /panel/
Disallow: /admin/
Disallow: /secure/
Disallow: /informer/
Disallow: /mchat
Disallow: /search
Disallow: /shop/order/
Disallow: /?ssid=
Disallow: /google
Disallow: /