Тарифы Услуги Сим-карты

Robots txt закрыть индексацию. Какие страницы закрывать от индексации и как

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

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

Как видно по расширению robots.txt – это текстовый файл. Для создания или редактирования данного файла лучше использовать самые простые текстовые редакторы наподобие Блокнот (Notepad). robots.txt должен быть размещен в корневом каталоге сайта и имеет собственный формат, который мы рассмотрим ниже.

Формат файла robots.txt

Файл robots.txt должен состоять как минимум из двух обязательных записей. Первой идет директива User-agent указывающая, какой поисковый робот должен следовать идущим дальше инструкциям. Значением может быть имя робота (googlebot, Yandex, StackRambler) или символ * в случае если вы обращаетесь сразу ко всем роботам. Например:

User-agent: googlebot

Название робота вы можете найти на сайте соответствующего поисковика. Дальше должна идти одна или несколько директив Disallow. Эти директивы сообщают роботу, какие файлы и папки индексировать запрещено. Например, следующие строки запрещают роботам индексировать файл feedback.php и каталог cgi-bin:

Disallow: /feedback.php Disallow: /cgi-bin/

Также можно использовать только начальные символы файлов или папок. Строка Disallow: /forum запрещает индексирование всех файлов и папок в корне сайта, имя которых начинается на forum, например, файл http://site.ru/forum.php и папку http://site.ru/forum/ со всем ее содержимым. Если Disallow будет пустым, то это значит, что робот может индексировать все страницы. Если значением Disallow будет символ /, то это значит что весь сайт индексировать запрещено.

Для каждого поля User-agent должно присутствовать хотя бы одно поле Disallow. То-есть, если вы не собираетесь ничего запрещать для индексации, то файл robots.txt должен содержать следующие записи:

User-agent: * Disallow:

Дополнительные директивы

Кроме регулярных выражений Яндекс и Google разрешают использование директивы Allow, которая является противоположностью Disallow, то-есть указывает какие страницы можно индексировать. В следующем примере Яндексу запрещено индексировать все, кроме адресов страниц начинающихся с /articles:

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

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

User-agent: Yandex Allow:

равнозначно

User-agent: Yandex Disallow: /

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

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

Большинство поисковых систем учитывают только явно указанные имена файлов и папок, но есть и более продвинутые поисковики. Робот Google и робот Яндекса поддерживают использование простых регулярных выражений в robots.txt, что значительно уменьшает количество работы для вебмастеров. Например, следующие команды запрещают роботу Google индексировать все файлы с расширением.pdf:

User-agent: googlebot Disallow: *.pdf$

В приведенном примере символ * – это любая последовательность символов, а $ указывает на окончание ссылки.

User-agent: Yandex Allow: /articles/*.html$ Disallow: /

Приведенные выше директивы разрешают Яндексу индексировать только находящиеся в папке /articles/ файлы с расширением ".html". Все остальное запрещено для индексации.

Карта сайта

В файле robots.txt можно указывать расположение XML-карты сайта:

User-agent: googlebot Disallow: Sitemap: http://site.ru/sitemap.xml

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

User-agent: Yandex Disallow: Sitemap: http://mysite.ru/my_sitemaps1.xml Sitemap: http://mysite.ru/my_sitemaps2.xml

Зеркала сайта

Как вы знаете обычно один и тот же сайт может быть доступен по двум адресам: как с www, так и без него. Для поискового робота site.ru и www.site.ru это разные сайты, но с одинаковым содержимым. Они называются зеркалами.

Из-за того что на страницы сайта есть ссылки как с www так и без, то вес страниц может разделиться между www.site.ru и site.ru. Чтобы этого не происходило поисковику нужно указать главное зеркало сайта. В результате "склеивания" весь вес будет принадлежать одному главному зеркалу и сайт сможет занять более высокую позицию в поисковой выдаче.

Указать основное зеркало для Яндекса можно прямо в файле robots.txt с помощью директивы Host:

User-agent: Yandex Disallow: /feedback.php Disallow: /cgi-bin/ Host: www.site.ru

После склейки зеркалу www.site.ru будет принадлежать весь вес и он будет занимать более высокую позицию в поисковой выдаче. А site.ru поисковик вообще не будет индексировать.

Для остальных поисковиков выбором главного зеркала является серверный постоянный редирект (код 301) с дополнительных зеркал на основное. Делается это с помощью файла.htaccess и модуля mod_rewrite. Для этого ложим в корень сайта файл.htaccess и пишем туда следующее:

RewriteEngine On Options +FollowSymlinks RewriteBase / RewriteCond %{HTTP_HOST} ^site.ru$ RewriteRule ^(.*)$ http://www.site.ru/$1

В результате все запросы с site.ru будут идти на www.site.ru, то-есть site.ru/page1.php будет перенаправляться на www.site.ru/page1.php.

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

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

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

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

User-agent: StackRambler Disallow: /garbage/ # ничего полезного в этой папке нет Disallow: /doc.xhtml # и на этой странице тоже # и все комментарии в этом файле также бесполезны

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

1. Разрешаем всем роботам индексировать все документы сайта:

User-agent: * Disallow:
User-agent: * Disallow: /

3. Запрещаем роботу поисковика Google индексировать файл feedback.php и содержимое каталога cgi-bin:

User-agent: googlebot Disallow: /cgi-bin/ Disallow: /feedback.php

4. Разрешаем всем роботам индексировать весь сайт, а роботу поисковика Яндекс запрещаем индексировать файл feedback.php и содержимое каталога cgi-bin:

User-agent: Yandex Disallow: /cgi-bin/ Disallow: /feedback.php Host: www.site.ru User-agent: * Disallow:

5. Разрешаем всем роботам индексировать весь сайт, а роботу Яндекса разрешаем индексировать только предназначенную для него часть сайта:

User-agent: Yandex Allow: /yandex Disallow: / Host: www.site.ru User-agent: * Disallow:

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

Часто встречающиеся ошибки

Нужно обязательно учитывать, что пустая строка в файле robots.txt представляет собой разделитель двух записей для разных роботов. Также нельзя указывать несколько директив в одной строке. Запрещая индексацию файла веб-мастера часто пропускают / перед названием файла.

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

Проверка файла robots.txt на наличие ошибок

Обязательно проверьте как понимает ваш файл robots поисковиковые системы. Для проверки Google вы можете воспользоваться Инструментами Google для веб-мастеров. Если вы хотите узнать как ваш файл robots.txt понимает Яндекс, то можете воспользоваться сервисом Яндекс.Вебмастер. Это позволит вовремя исправить допущенные ошибки. Также на страницах данных сервисов вы сможете найти рекомендации по составлению файла robots.txt и много другой полезной информации.

Копирование статьи запрещено.

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 написано:

User-agent: * Disallow: /

Этого достаточно или же нужно что-то еще?
- Этого вполне достаточно.

А теперь с разъяснениями

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

Konstantin Chagin / Shutterstock.com

Запрещающая директива

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

Но это ещё не всё!

Важно! Сама по себе эта директива "Disallow: /" не способна запретит сканирование вашего сайта. Нужно грамотно оформить весь файл robots.txt.

В самом robots.txt проверяется наличие записей, начинающихся с "User-agent:" , в них ищутся подстроки "Yandex" , либо "*". В этих инструкциях регистр значения не имеет.

Если обнаружено "User-agent: Yandex" , директивы для "User-agent: *" не учитываются (потому что есть персональная директива для Яндекса).

Когда доступ к сайту неограничен

Если записи "User-agent: Yandex" и "User-agent: *" отсутствуют, считается, что доступ роботу не ограничен.

Запрет есть, а доступ разрешен

Также действует правило: если обнаружены директивы для конкретного робота, директивы "User-agent: Yandex" и "User-agent: *" не используются.

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

Важно! Чтобы запретить доступ робота ко всему сайту, используйте две директивы.

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

User-agent: * # директива для всех роботов Disallow: / # блокирует доступ ко всему сайту

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

Будьте внимательны!

Только не забудьте открыть страницы сайта для индексации по окончании всех работ. Такое часто бывает. Даже у меня был один случай. Спустя год, мне стало интересно как поживает сайт который я сделал одному клиенту. Решил проверить сколько у них страниц в индексе и, о ужас, в индексе ничего. Я стал выяснять причину и обнаружил, что robots.txt стоит запрет на индексирование. Но клиент этого даже не заметил, так как он весьма скептически относился к продвижению. Ему нужен был сайт в качестве онлайн-каталога.

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

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

Файл robots.txt и стандарт исключений для роботов

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

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

[директива]: [значение]

Весь список директив разбивают на секции (записи), разделяя их одной или несколькими пустыми строками. Новую секцию начинают с одной или нескольких инструкций User-agent. Запись должна содержать как минимум одну директиву User-agent и одну Disallow.

Текст после символа # (решетка) считается комментарием и игнорируется поисковыми роботами.

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

User-agent — первая директива в секции, сообщает имена роботов, для которых предназначены следующие за ней правила. Звездочка в значении обозначает любое имя, разрешается только одна секция с инструкциями для всех роботов. Пример:

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

Директива Disallow

Disallow — основная директива, запрещающая сканирование URL/файлов/каталогов, имена которых полностью или частично совпадают с указанными после двоеточия.

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

Примеры директивы Disallow:

# пустое значение разрешает индексировать все User-agent: * Disallow: # запрещает сканировать весь сайт User-agent: * Disallow: / # запрещает к сканированию все файлы и/или каталоги, начинающиеся из символов "wp-" User-agent: * Disallow: /wp- # запрещает сканировать файлы page-1.php, page-vasya.php, page-news-345.php # вместо * может встречаться любая последовательность символов User-agent: * Disallow: /page-*.php

Директива Allow (неофициальная)

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

# запрещает сканировать ресурсы начинающиеся с /catalog # но разрешает сканировать страницу /catalog/page.html User-agent: Yandex Disallow: /catalog Allow: /catalog/page.html

Sitemap (неофициальная)

Sitemap — директива, указывающая адрес карты сайта в формате XML. Эта директива так же не описана в стандарте исключений и поддерживается не всеми роботами (работает для Яндекс, Google, Ask, Bing и Yahoo). Можно указывать одну или несколько карт — все будут учтены. Может использоваться без User-agent после пустой строки. Пример:

# одна или несколько карт в формате XML, указывается полный URL Sitemap: http://sitename.com/sitemap.xml Sitemap: http://sitename.com/sitemap-1.xml

Директива Host (только Яндекс)

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

# указываем главное зеркало в секции для Яндекса User-agent: Yandex Disallow: Host: sitename.com # главное зеркало для сайта с SSL сертификатом User-agent: Yandex Disallow: Host: https://sitename.com # или отдельно без User-agent после пустой строки Host: sitename.com

Другие директивы

Роботы Яндекса также понимают директивы Crawl-delay и Clean-param . Детальнее об их использовании читайте в справочной документации.

Роботы, директивы robots.txt и индекс поисковых систем

Ранее поисковые роботы следовали директивам robots.txt и не добавляли в индекс «запрещенных» там ресурсов.

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

Почему Google добавляет в индекс страницы, запрещенные в robots.txt?

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

Google без зазрения совести сообщает, что директивы в robots.txt являются рекомендацией , а не прямыми командами к действию.

Это означает, что робот директивы учитывает, но поступает все-же по-своему. И он может добавить в индекс страницу, запрещенную в robots.txt, если встретит на нее ссылку.

Добавление адреса в robots.txt не гарантирует исключения его из индекса поисковой системы Google.

Индекс Google + некорректный robots.txt = ДУБЛИ

Практически каждое руководство в сети говорит о том, что закрытие страниц в robots.txt запрещает их индексацию.

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

Google предлагает два действительно рабочих варианта для исключения из индекса ресурсов веб-сайта:

  1. закрытие паролем (применяется для файлов вроде.doc, .pdf, .xls и других)
  2. добавление метатега robots с атрибутом noindex в (применяется для веб-страниц):

Главное, что нужно учесть:

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

Детальнее об этой проблеме можно почитать в справке Google . А решение здесь одно — открывать доступ в robots.txt и настраивать запрет на индексацию страниц метатегом (или паролем, если речь о файлах).

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

Если внимательно ознакомиться с предыдущим разделом, то становится понятно, что сегодня не стоит практиковать чрезмерный запрет адресов в robots.txt , по крайне мере для Google. Управлять индексацией страниц лучше через метатег robots.

Вот самый банальный и при этом совершенно правильный robots.txt для WordPress:

User-agent: * Disallow: Host: sitename.com

Удивлены? Еще бы! Все гениальное просто 🙂 На западных ресурсах, где нету Яндекса, рекомендации по составлению robots.txt для WordPress сводятся к двум первым строчкам, как это показали авторы WordPress SEO by Yoast .

Правильно настроенный SEO-плагин позаботится о канонических ссылках и метатеге robots со значением noindex, а страницы админки под паролем и не нуждаются в запрете индексации (исключением могут быть только страницы входа и регистрации на сайта — убедитесь, что на них есть meta тег robots со значением noindex). Карту сайта правильнее добавить вручную в вебмастере поисковой системы и заодно проследить, чтобы она была корректно прочитана. Осталось единственное и важное для рунета — указать главное зеркало для Яндекса.

Еще один вариант, подойдет для менее смелых:

User-agent: * Disallow: /wp-admin Host: sitename.com Sitemap: http://sitename.com/sitemam.xml

В первой секции запрещается индексация для всех роботов каталога wp-admin и его содержимого. В последних двух строках указанные зеркало сайта для робота Яндекса и карта сайта.

Прежде чем изменять свой robots.txt…

Если приняли решение о смене директив в robots.txt, то сначала позаботьтесь о трех вещах:

  1. Убедитесь, что в корне вашего сайта нету дополнительных файлов или каталогов, содержимое которых стоит скрыть от сканирования (это могут быть личные файлы или медиаресурсы);
  2. Включите канонические ссылки в своем SEO-плагине (это исключит из индекса URL c параметрами запроса вроде http://sitename.com/index.php?s=word )
  3. Настройте вывод метатега robots со значением noindex на страницах, которые хотите скрыть от индексации (для WordPress это архивы по дате, метке, автору и страницы пагинации). Сделать это можно для части страниц в настройках SEO-плагинов (в All In One SEO неполные настройки). Или специальным кодом вывести самостоятельно: /* ========================================================================== * Добавляем свой * ========================================================================== */ function my_meta_noindex () { if (//is_archive() OR // любые страницы архивов - за месяц, за год, по рубрике, по авторам //is_category() OR // архивы рубрик is_author() OR // архивы статей по авторам is_time() OR // архивы статей по времени is_date() OR // архивы статей по любым датам is_day() OR // архивы статей по дням is_month() OR // архивы статей по месяцам is_year() OR // архивы статей по годам is_tag() OR // архивы статей по тегам is_tax() OR // архивы статей для пользовательской таксономии is_post_type_archive() OR // архивы для пользовательского типа записи //is_front_page() OR // статическая главная страница //is_home() OR // главная страница блога с последними записями //is_singular() OR // любые типы записей - одиночные посты, страницы, вложения и т.д. //is_single() OR // любой одиночный пост любого типа постов (кроме вложений и Страниц) //is_page() OR // любая одиночная Страница ("Страницы" в админке) is_attachment() OR // любая страница вложения is_paged() OR // все и любые страницы пагинации is_search() // страницы результатов поиска по сайту) { echo "".""."\n"; } } add_action("wp_head", "my_meta_noindex", 3); /* ========================================================================== */

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

В двух словах о том, что закрывать в robots.txt

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

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

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

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

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

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

User-Agent: *
Disallow: /cgi-bin/

Детальное описание спецификации файла можно прочитать на странице: « ».

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

1. Строка с полем User-Agent является обязательной и должна предшествовать строкам с полем Disallow . Так, приведенный ниже файл robots.txt не запрещает ничего:

Disallow: /cgi-bin
Disallow: /forum

2. Пустые строки в файле robots.txt являются значимыми, они разделяют записи, относящиеся к разным роботам. Например, в следующем фрагменте файла robots.txt строка Disallow: /forum игнорируется, поскольку перед ней нет строки с полем User-Agent.

User-Agent: *
Disallow: /cgi-bin
Disallow: /forum

3. Строка с полем Disallow может запретить индексирование документов только с одним префиксом. Для запрета нескольких префиксов нужно написать несколько строк. Например, нижеприведенный файл запрещает индексирование документов, начинающихся с “/cgi-bin /forum ”, которых, скорее всего, не существует (а не документов с префиксами /cgi-bin и /forum ).

User-Agent: *
Disallow: /cgi-bin /forum

4. В строках с полем Disallow записываются не абсолютные, а относительные префиксы. То есть файл

User-Agent: *
Disallow: www.myhost.ru/cgi-bin

запрещает, например, индексирование документа http://www.myhost.ru/www.myhost.ru/cgi-bin/counter.cgi , но НЕ запрещает индексирование документа http://www.myhost.ru/cgi-bin/counter.cgi .

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

User-Agent: *
Disallow: *

запрещает индексирование документов, начинающихся с символа «* » (которых в природе не существует), и сильно отличается от файла:

User-Agent: *
Disallow: /

который запрещает индексирование всего сайта.

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

Тогда данный документ также не будет проиндексирован.

Вы также можете использовать тэг

Он означает, что робот поисковой машины не должен идти по ссылкам с данной страницы.

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

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

Чтобы запретить индексирование определенных фрагментов текста в документе, пометьте их тегами

Внимание! Тег NOINDEX не должен нарушать вложенность других тегов. Если указать следующую ошибочную конструкцию:


…код1…


…код2…

…код3…

запрет на индексирование будет включать не только «код1» и «код2», но и «код3».

Как выбрать главный виртуальный хост из нескольких зеркал?

Если ваш сайт находится на одном сервере (одном IP), но виден во внешнем мире под разными именами (зеркала, разные виртуальные хосты), Яндекс рекомендует вам выбрать то имя, под которым вы хотите быть проиндексированы. В противном случае Яндекс выберет главное зеркало самостоятельно, а остальные имена будут запрещены к индексации.

Для того, чтобы индексировалось выбранное вами зеркало, достаточно запретить индексацию всех остальных зеркал при помощи . Это можно сделать, используя нестандартное расширение robots.txt — директиву Host , в качестве ее параметра указав имя основного зеркала. Если www.glavnoye-zerkalo.ru — основное зеркало, то robots.txt должен выглядеть примерно так:

User-Agent: *
Disallow: /forum
Disallow: /cgi-bin
Host: www.glavnoye-zerkalo.ru

В целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt, директиву Host необходимо добавлять в группе, начинающейся с записи User-Agent, непосредственно после записей Disallow.

Аргументом директивы Host является доменное имя с номером порта (80 по умолчанию), отделенным двоеточием. Если какой-либо сайт не указан в качестве аргумента для Host , для него подразумевается наличие директивы Disallow: / , т.е. полный запрет индексации (при наличии в группе хотя бы одной корректной директивы Host ). Таким образом, файлы robots.txt вида

User-Agent: *
Host: www.myhost.ru

User-Agent: *
Host: www.myhost.ru:80

эквивалентны и запрещают индексирование как www.otherhost.ru , так и www.myhost.ru:8080 .

Параметр директивы Host обязан состоять из одного корректного имени хоста (т.е. соответствующего RFC 952 и не являющегося IP-адресом) и допустимого номера порта. Некорректно составленные строчки Host игнорируются .

# Примеры игнорируемых директив Host
Host: www.myhost- .ru
Host: www.- myhost.ru
Host: www.myhost.ru:0
Host: www.my_ host.ru
Host: . my-host.ru:8000
Host: my-host.ru.
Host: my.. host.ru
Host: www.myhost.ru/
Host: www.myhost.ru:8080/
Host: http:// www.myhost.ru
Host: www.mysi.te
Host: 213.180.194.129
Host: www.firsthost.ru, www.secondhost.ru
Host: www.firsthost.ru www.secondhost.ru

Если у вас сервер Apache, то можно вместо использования директивы Host задать robots.txt с использованием директив SSI:


User-Agent: *
Disallow: /

В этом файле роботу запрещен обход всех хостов, кроме www.главное_имя.ru

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

Http://www.главное_имя.ru/robots.txt
http://www.другое_имя.ru/robots.txt и т.д. Результаты должны быть разные.

Рекомендации для веб-сервера Русский Apache

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

Если кодировки разложены по портам (или серверам), то надо выдавать на разных портах (серверах) РАЗНЫЙ robots.txt. А именно, во всех файлах robots.txt для всех портов/серверов, кроме «основного», должно быть написано:

User-Agent: *
Disallow: /

Для этого можно использовать механизм SSI, .

Если кодировки в вашем Apache выделяются по именам «виртуальных» директорий, то надо написать один robots.txt, в котором должны быть примерно такие строчки (в зависимости от названий директорий):

User-Agent: *
Disallow: /dos
Disallow: /mac
Disallow: /koi