Одним из этапов оптимизации сайта для поисковиков является составление файла 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 — текстовый файл в формате.txt, ограничивающий поисковым роботам доступ к содержимому на http-сервере. Как определение, Robots.txt — это стандарт исключений для роботов , который был принят консорциумом W3C 30 января 1994 года, и который добровольно использует большинство поисковых систем. Файл robots.txt состоит из набора инструкций для поисковых роботов, которые запрещают индексацию определенных файлов, страниц или каталогов на сайте. Рассмотрим описание robots.txt для случая, когда сайт не ограничивает доступ роботам к сайту.

Простой пример robots.txt:

User-agent: * Allow: /

Здесь роботс полностью разрешает индексацию всего сайта.

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

Ваш_сайт.ru/robots.txt

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

Если файл доступен, то вы увидите содержимое robots.txt в браузере.

Для чего нужен robots.txt

Roots.txt для сайта является важным аспектом . Зачем нужен robots.txt ? Например, в SEO robots.txt нужен для того, чтобы исключать из индексации страницы, не содержащие полезного контента и многое другое . Как, что, зачем и почему исключается уже было описано в статье про , здесь не будем на этом останавливаться. Нужен ли файл robots.txt всем сайтам? И да и нет. Если использование robots.txt подразумевает исключение страниц из поиска, то для небольших сайтов с простой структурой и статичными страницами подобные исключения могут быть лишними. Однако, и для небольшого сайта могут быть полезны некоторые директивы robots.txt , например директива Host или Sitemap, но об этом ниже.

Как создать robots.txt

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

Cоздать robots.txt онлайн

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

Редактирование robots.txt

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

Правильная настройка robots.txt

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

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

Правильный robots.txt начинается с директивы User-agent , которая указывает, к какому роботу обращены конкретные директивы.

Примеры User-agent в robots.txt:

# Указывает директивы для всех роботов одновременно User-agent: * # Указывает директивы для всех роботов Яндекса User-agent: Yandex # Указывает директивы для только основного индексирующего робота Яндекса User-agent: YandexBot # Указывает директивы для всех роботов Google User-agent: Googlebot

Учитывайте, что подобная настройка файла robots.txt указывает роботу использовать только директивы, соответствующие user-agent с его именем.

Пример robots.txt с несколькими вхождениями User-agent:

# Будет использована всеми роботами Яндекса User-agent: Yandex Disallow: /*utm_ # Будет использована всеми роботами Google User-agent: Googlebot Disallow: /*utm_ # Будет использована всеми роботами кроме роботов Яндекса и Google User-agent: * Allow: /*utm_

Директива User-agent создает лишь указание конкретному роботу, а сразу после директивы User-agent должна идти команда или команды с непосредственным указанием условия для выбранного робота. В примере выше используется запрещающая директива «Disallow», которая имеет значение «/*utm_». Таким образом, закрываем все . Правильная настройка robots.txt запрещает наличие пустых переводов строки между директивами «User-agent», «Disallow» и директивами следующими за «Disallow» в рамках текущего «User-agent».

Пример неправильного перевода строки в robots.txt:

Пример правильного перевода строки в robots.txt:

User-agent: Yandex Disallow: /*utm_ Allow: /*id= User-agent: * Disallow: /*utm_ Allow: /*id=

Как видно из примера, указания в robots.txt поступают блоками , каждый из которых содержит указания либо для конкретного робота, либо для всех роботов «*».

Кроме того, важно соблюдать правильный порядок и сортировку команд в robots.txt при совместном использовании директив, например «Disallow» и «Allow». Директива «Allow» — разрешающая директива, является противоположностью команды robots.txt «Disallow» — запрещающей директивы.

Пример совместного использования директив в robots.txt:

User-agent: * Allow: /blog/page Disallow: /blog

Данный пример запрещает всем роботам индексацию всех страниц, начинающихся с «/blog», но разрешает индексации страниц, начинающиеся с «/blog/page».

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

User-agent: * Disallow: /blog Allow: /blog/page

Сначала запрещаем весь раздел, потом разрешаем некоторые его части.

Еще один правильный пример robots.txt с совместными директивами:

User-agent: * Allow: / Disallow: /blog Allow: /blog/page

Обратите внимание на правильную последовательность директив в данном robots.txt.

Директивы «Allow» и «Disallow» можно указывать и без параметров, в этом случае значение будет трактоваться обратно параметру «/».

Пример директивы «Disallow/Allow» без параметров:

User-agent: * Disallow: # равнозначно Allow: / Disallow: /blog Allow: /blog/page

Как составить правильный robots.txt и как пользоваться трактовкой директив — ваш выбор. Оба варианта будут правильными. Главное — не запутайтесь.

Для правильного составления robots.txt необходимо точно указывать в параметрах директив приоритеты и то, что будет запрещено для скачивания роботам. Более полно использование директив «Disallow» и «Allow» мы рассмотрим чуть ниже, а сейчас рассмотрим синтаксис robots.txt. Знание синтаксиса robots.txt приблизит вас к тому, чтобы создать идеальный robots txt своими руками .

Синтаксис robots.txt

Роботы поисковых систем добровольно следуют командам robots.txt — стандарту исключений для роботов, однако не все поисковые системы трактуют синтаксис robots.txt одинаково. Файл robots.txt имеет строго определённый синтаксис, но в то же время написать robots txt не сложно, так как его структура очень проста и легко понятна.

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

  1. Каждая директива начинается с новой строки;
  2. Не указывайте больше одной директивы в одной строке;
  3. Не ставьте пробел в начало строки;
  4. Параметр директивы должен быть в одну строку;
  5. Не нужно обрамлять параметры директив в кавычки;
  6. Параметры директив не требуют закрывающих точки с запятой;
  7. Команда в robots.txt указывается в формате — [Имя_директивы]:[необязательный пробел][значение][необязательный пробел];
  8. Допускаются комментарии в robots.txt после знака решетки #;
  9. Пустой перевод строки может трактоваться как окончание директивы User-agent;
  10. Директива «Disallow: » (с пустым значением) равнозначна «Allow: /» — разрешить все;
  11. В директивах «Allow», «Disallow» указывается не более одного параметра;
  12. Название файла robots.txt не допускает наличие заглавных букв, ошибочное написание названия файла — Robots.txt или ROBOTS.TXT;
  13. Написание названия директив и параметров заглавными буквами считается плохим тоном и если по стандарту, robots.txt и нечувствителен к регистру, часто к нему чувствительны имена файлов и директорий;
  14. Если параметр директивы является директорией, то перед название директории всегда ставится слеш «/», например: Disallow: /category
  15. Слишком большие robots.txt (более 32 Кб) считаются полностью разрешающими, равнозначными «Disallow: »;
  16. Недоступный по каким-либо причинам robots.txt может трактоваться как полностью разрешающий;
  17. Если robots.txt пустой, то он будет трактоваться как полностью разрешающий;
  18. В результате перечисления нескольких директив «User-agent» без пустого перевода строки, все последующие директивы «User-agent», кроме первой, могут быть проигнорированы;
  19. Использование любых символов национальных алфавитов в robots.txt не допускается.

Поскольку разные поисковые системы могут трактовать синтаксис robots.txt по-разному, некоторые пункты можно опустить. Так например, если прописать несколько директив «User-agent» без пустого перевода строки, все директивы «User-agent» будут восприняты корректно Яндексом, так как Яндекс выделяет записи по наличию в строке «User-agent».

В роботсе должно быть указано строго только то, что нужно, и ничего лишнего. Не думайте, как прописать в robots txt все , что только можно и чем его заполнить. Идеальный robots txt — это тот, в котором меньше строк, но больше смысла. «Краткость — сестра таланта». Это выражение здесь как нельзя кстати.

Как проверить robots.txt

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

Проверка файла robots.txt в Яндекс.Вебмастер: http://webmaster.yandex.ru/robots.xml

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

Кроме сервисов проверки от Яндекс и Google, существует множество других онлайн валидаторов robots.txt.

Robots.txt vs Яндекс и Google

Есть субъективное мнение, что указание отдельного блока директив «User-agent: Yandex» в robots.txt Яндекс воспринимает более позитивно, чем общий блок директив с «User-agent: *». Аналогичная ситуация robots.txt и Google. Указание отдельных директив для Яндекс и Google позволяет управлять индексацией сайта через robots.txt. Возможно, им льстит персонально обращение, тем более, что для большинства сайтов содержимое блоков robots.txt Яндекса, Гугла и для других поисковиков будет одинаково. За редким исключением, все блоки «User-agent» будут иметь стандартный для robots.txt набор директив. Так же, используя разные «User-agent» можно установить запрет индексации в robots.txt для Яндекса , но, например не для Google.

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

Запретить индексацию: robots.txt Disallow

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

Пример как в robots.txt запретить индексацию сайта:

User-agent: * Disallow: /

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

В параметре директивы Disallow допускается использование специальных символов * и $:

* — любое количество любых символов, например, параметру /page* удовлетворяет /page, /page1, /page-be-cool, /page/kak-skazat и т.д. Однако нет необходимости указывать * в конце каждого параметра, так как например, следующие директивы интерпретируются одинаково:

User-agent: Yandex Disallow: /page User-agent: Yandex Disallow: /page*

$ — указывает на точное соответствие исключения значению параметра:

User-agent: Googlebot Disallow: /page$

В данном случае, директива Disallow будет запрещать /page, но не будет запрещать индексацию страницы /page1, /page-be-cool или /page/kak-skazat.

Если закрыть индексацию сайта robots.txt , в поисковые системы могут отреагировать на так ход ошибкой «Заблокировано в файле robots.txt» или «url restricted by robots.txt» (url запрещенный файлом robots.txt). Если вам нужно запретить индексацию страницы , можно воспользоваться не только robots txt, но и аналогичными html-тегами:

  • - не индексировать содержимое страницы;
  • - не переходить по ссылкам на странице;
  • - запрещено индексировать содержимое и переходить по ссылкам на странице;
  • — аналогично content=»none».

Разрешить индексацию: robots.txt Allow

Allow — разрешающая директива и противоположность директиве Disallow. Эта директива имеет синтаксис, сходный с Disallow.

Пример, как в robots.txt запретить индексацию сайта кроме некоторых страниц:

User-agent: * Disallow: / Allow: /page

Запрещается индексировать весь сайт , кроме страниц, начинающихся с /page.

Disallow и Allow с пустым значением параметра

Пустая директива Disallow:

User-agent: * Disallow:

Не запрещать ничего или разрешить индексацию всего сайта и равнозначна:

User-agent: * Allow: /

Пустая директива Allow:

User-agent: * Allow:

Разрешить ничего или полный запрет индексации сайта, равнозначно:

User-agent: * Disallow: /

Главное зеркало сайта: robots.txt Host

Директива Host служит для указания роботу Яндекса главного зеркала Вашего сайта . Из всех популярных поисковых систем, директива Host распознаётся только роботами Яндекса . Директива Host полезна в том случае, если ваш сайт доступен по нескольким , например:

Mysite.ru mysite.com

Или для определения приоритета между:

Mysite.ru www.mysite.ru

Роботу Яндекса можно указать, какое зеркало является главным . Директива Host указывается в блоке директивы «User-agent: Yandex» и в качестве параметра, указывается предпочтительный адрес сайта без «http://».

Пример robots.txt с указанием главного зеркала:

User-agent: Yandex Disallow: /page Host: mysite.ru

В качестве главного зеркала указывается доменное имя mysite.ru без www. Таки образом, в результатах поиска буде указан именно такой вид адреса.

User-agent: Yandex Disallow: /page Host: www.mysite.ru

В качестве основного зеркала указывается доменное имя www.mysite.ru.

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

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

Карта сайта: robots.txt sitemap

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

Пример robots.txt с указанием адреса карты сайта:

User-agent: * Disallow: /page Sitemap: http://www.mysite.ru/sitemap.xml

Указание адреса карты сайта через директиву Sitemap в robots.txt позволяет поисковому роботу узнать о наличии карты сайта и начать ее индексацию.

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

Директива Clean-param позволяет исключить из индексации страницы с динамическими параметрами. Подобные страницы могут отдавать одинаковое содержимое, имея различные URL страницы. Проще говоря, будто страница доступна по разным адресам. Наша задача убрать все лишние динамические адреса, которых может быть миллион. Для этого исключаем все динамические параметры, используя в robots.txt директиву Clean-param .

Синтаксис директивы Clean-param:

Clean-param: parm1[&parm2&parm3&parm4&..&parmn] [Путь]

Рассмотрим на примере страницы со следующим URL:

Www.mysite.ru/page.html?&parm1=1&parm2=2&parm3=3

Пример robots.txt Clean-param:

Clean-param: parm1&parm2&parm3 /page.html # только для page.html

Clean-param: parm1&parm2&parm3 / # для всех

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

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

Пример robots.txt Crawl-delay:

User-agent: Yandex Disallow: /page Crawl-delay: 3

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

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

Содержание:


Что такое robots txt

В одной из наших прошлых статей мы рассказывали и том, как работают поисковые роботы. Файл robots txt даёт инструкции поисковым роботам, о том, как правильно индексировать ваш сайт. С помощью директив вы можете, например, указать роботу какие страницы или директории следует индексировать, а какие нет, сформировать группу зеркал для вашего сайта(если они у вас есть), указать путь к файлу sitemap и так далее. В основном его используют именно для запрета индексации определённых страниц сайта.

Как создать правильный robots txt

В любом текстовом редакторе создайте файл с именем robots txt. Затем, используя директивы описанные ниже, укажите роботу на страницы сайта, которые надо добавить или же наоборот убрать из поисковой выдачи. После того, как вы создали файл, проверьте его на наличие ошибок с помощью Яндекс вебмастера или Google Search Console.

Готовый файл поместите в корневой каталог вашего сайта(там, где находится файл index.html).


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

Это своеобразное приветствие поисковых роботов.

Строка "User-agent:*" Скажет, что все поисковые роботы могут использовать инструкции, содержащиеся в этом файле. А, например, строка "User-agent: Yandex" даст инструкции только для поискового робота яндекса. Примеры использования указаны ниже. Также у поисковых систем есть вспомогательные роботы для разных категорий. Например, YandexNews и Googlebot-News - это роботы для работы с новостями.


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

С помощью директивы Disallow вы указываете какие страницы или каталоги сайта запрещено индексировать. А с помощью директивы Allow, соответственно, можно.

Примеры:
User-agent:*
Disallow: /
Allow:/catalog /

Такая запись сообщит всем поисковым роботам, что из всего сайта им можно индексировать только директорию catalog.

Кстати, символ # предназначен для описания комментариев. Все, что находится после этого символа и до конца строки не учитывается.

А вот пример robots txt с указанием индивидуальных инструкций для разных поисковиков:

#разрешает роботу индексировать весь сайт, кроме раздела с велосипедами
User-agent:*
Disallow: /велосипеды /

#запрещает роботу индексировать сайт, кроме раздела с лодками
User-agent: Googlebot
Allow: /лодки /
Disallow:/

#запретит всем остальным поисковым системам индексировать сайт
User-agent: *
Disallow: /

Обратите внимание , что между директивами User-agent, Allow и Disallow не может быть пустых строк!


Спецсимволы * и $

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

Например: #Запрещает роботам индексировать все страницы, url которых содержит private
User-agent:*
Disallow: /*private

По умолчанию в конце каждого правила необходимо прописать спецсимвол *. А чтобы отменить * в конце правила используется символ $.

Например: # запрещает "/lock"
# но не запрещает "/lock.html"
User-agent:*
Disallow: /lock$
# запрещает и "/lock"
# и "/lock.html"
User-agent:*
Disallow: /lock

Спецсимвол $ не запрещает указанный * на конце, то есть:

User-agent:*
Disallow: /lock$ # запрещает только "/lock"
Disallow: /lock*$ # так же, как "Disallow: /lock"
# запрещает и /lock.html и /lock


Директива sitemap

Если вы используете карту сайта sitemap, то используйте директиву sitemap и в ней укажите путь к одному(или нескольким файлам).

User-agent:*
sitemap:https://site.com/sitemap.xml


Директива Host

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

Пример:

#указываем главное зеркало сайта

User-Agent: Yandex
Disallow:/mg-admin
Host: https://www.zerkalo.ru

Примечание . Эта директива используется исключительно для Яндекса! + Для каждого файла robots.txt обрабатывается только одна директива Host. Если в файле указано несколько директив, робот использует первую.

Директива Host должна содержать:

  1. Протокол HTTPS, если зеркало доступно только по защищенному каналу. Если вы используете протокол HTTP, то его указывать необязательно.
  2. Одно корректное доменное имя, соответствующего RFC 952 и не являющегося IP-адресом.
  3. Номер порта, если необходимо (Host: myhost.ru:8080).


Можно ли использовать кириллицу в robots txt?

Нет, использовать кириллицу нельзя. Для указания имен доменов на кириллице используйте, например, этот сервис .


Настройка robots txt MogutaCMS

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

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

Карта сайта, значительно упрощает индексацию вашего блога. Карта сайта должна быть в обязательном порядке у каждого сайта и блога. Но также на каждом сайте и блоге должен быть файл robots. txt . Файл robots.txt содержит свод инструкций для поисковых роботов. Можно сказать, — правила поведения поисковых роботов на вашем блоге. А также в данном файле содержится путь к карте сайта вашего блога. И, по сути, при правильно составленном файле robots.txt поисковый робот не тратит драгоценное время на поиск карты сайта и индексацию не нужных файлов.

Что же из себя представляет файл robots.txt?

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

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

С помощью данного файла, вы можете запретить индексацию файлов движка WordPress. Или, скажем, секретного раздела вашего блога. Вы можете указать путь к карте Вашего блога и главное зеркало вашего блога. Здесь я имею ввиду, ваше доменное имя с www и без www.

Индексация сайта с robots.txt и без

Данный скриншот, наглядно показывает, как файл robots.txt запрещает индексацию определённых папок на сайте. Без файла, роботу доступно всё на вашем сайте.

Основные директивы файла robots.txt

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

User-agent – данная команда обозначает доступ роботам к вашему сайту. Используя эту директиву можно создать инструкции индивидуально под каждого робота.

User-agent: Yandex – правила для робота Яндекс

User-agent: * — правила для всех роботов

Disallow и Allow – директивы запрета и разрешения. С помощью директивы Disallow запрещается индексация а с помощью Allow разрешается.

Пример запрета:

User-agent: *

Disallow: / — запрет ко всему сайта.

User-agent: Yandex

Disallow: /admin – запрет роботу Яндекса к страницам лежащим в папке admin.

Пример разрешения:

User-agent: *

Allow: /photo

Disallow: / — запрет ко всему сайту, кроме страниц находящихся в папке photo.

Примечание! директива Disallow: без параметра разрешает всё, а директива Allow: без параметра запрещает всё. И директивы Allow без Disallow не должно быть.

Sitemap – указывает путь к карте сайта в формате xml.

Sitemap: https://сайт/sitemap.xml.gz

Sitemap: https://сайт/sitemap.xml

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

User-agent: Yandex

Disallow: /wp-includes

Host: сайт

Примечание! адрес главного зеркала указывается без указания протокола передачи гипертекста (http://).

Как создать robots.txt

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

Мы рассмотрим создание стандартного (универсального) файла robots.txt для блога на WordPress. Вы всегда сможете дополнить его своими настройками.

Итак, приступаем. Нам понадобится обычный «блокнот», который есть в каждой операционной системе Windows. Или TextEdit в MacOS.

Открываем новый документ и вставляем в него вот эти команды:

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

Не забудьте заменить параметры директив Sitemap и Host на свои.

Важно! при написании команд, допускается лишь один пробел. Между директивой и параметром. Ни в коем случае не делайте пробелов после параметра или просто где попало.

Пример : Disallow:<пробел>/feed/

Данный пример файла robots.txt универсален и подходит под любой блог на WordPress с ЧПУ адресами url. О том что такое ЧПУ читайте . Если же Вы не настраивали ЧПУ, рекомендую из предложенного файла удалить Disallow: /*?* Disallow: /?s=

Загрузка файла robots.txt на сервер

Лучшим способом для такого рода манипуляций является FTP соединение. О том как настроить FTP соединение для TotolCommander читайте . Или же Вы можете использовать файловый менеджер на Вашем хостинге.

Я воспользуюсь FTP соединением на TotolCommander.

Сеть > Соединится с FTP сервером.

Выбрать нужное соединение и нажимаем кнопку «Соединиться».

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

Копирование robots.txt на сервер

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

Для этого Вам потребуется войти в кабинет вебмастера Яндекс или Google. Рассмотрим примере Яндекс. Здесь можно провести анализ даже не подтверждая прав на сайт. Вам достаточно иметь почтовый ящик на Яндекс.

Открываем кабинет Яндекс.вебмастер.

На главной странице кабинета вебмастер, открываем ссылку «Проверить robots. txt» .

Для анализа потребуется ввести url адрес вашего блога и нажать кнопку «Загрузить robots. txt с сайта ». Как только файл будет загружен нажимаем кнопку «Проверить».

Отсутствие предупреждающих записей, свидетельствует о правильности создания файла robots.txt.

Ниже будет представлен результат. Где ясно и понятно какие материалы разрешены для показа поисковым роботам, а какие запрещены.

Результат анализа файла robots.txt

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

Кстати, если вам интересно как выглядит файл robots.txt на чьём-то блоге, вы может с лёгкостью его посмотреть. Для этого к адресу сайта нужно просто добавить /robots.txt

https://сайт/robots.txt

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

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

На этом у меня всё. Всем желаю успехов. Если будут вопросы или дополнения пишите в комментариях.

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

С уважением, Максим Зайцев.

Подписывайтесь на новые статьи!

) можем переходить к практической части, а вернее к подготовке сайта к продвижению. Сегодня мы разберем вопрос: как создать robots.txt?

robots.txt — это файл в котором содержатся параметры индексирования для поисковых систем.

Создание этого файла является одним из первых шагов к SEO-продвижению. И вот почему.

Для чего нужен robots.txt?

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

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

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

  • www.сайт
  • сайт
  • сайт/
  • www.сайт/

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

Как заполнить файл robots.txt?

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

  • Название файла robots.txt должно начинаться именно с маленькой буквы. Не нужно называть его ни Robots.txt, ни ROBOTS.TXT. Правильно: robots.txt ;
  • Текстовый формат «Unix». Формат свойственен обычному блокноту в Windows, поэтому создать robots.txt достаточно просто;

Операторы robots

А сейчас поговорим, собственно, о самих операторах robots. Всего их около 6 по-моему, но необходимыми являются только 4:

  1. User-agent . Данный оператор используется для указания поисковой системы, к которой адресуются правила индексации. С его помощью можно указывать разные правила разным ПС. Пример заполнения: User-agent: Yandex ;
  2. Disallow . Оператор, запрещающий индексацию той или папки, страницы, файла. Пример заполнения: Disallow: /page.html ;
  3. Host . Этим оператором указывается главный адрес (домен) сайта. Пример заполнения: Host: сайт ;
  4. Sitemap . Указывает на адрес карты сайта. Пример заполнения: Sitemap: сайт/sitemap.xml ;

Таким образом я запретил Яндексу индексировать страницу «page.. Теперь поисковый робот Яндекса учтет эти правила и страницы «page.html» никогда не будет в индексе.

User-agent

Как уже было сказано выше, в User-agent указывается поисковая система, к которой будут использованы правила индексации. Вот небольшая табличка:

Поисковая система Параметр User-agent
Яндекс Yandex
Google Google
Mail.ru Mail.ru
Rambler StackRambler

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

User-agent: *

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

Disallow

С этим оператором чуть посложнее, поэтому нужно быть осторожным с его заполнением. Прописывается после оператора «User-agent». Любая ошибка может привести к очень плачевным последствиям.

Что запрещаем? Параметр Пример
Индексацию сайта / Disallow: /
Файл в корневом каталоге /имя файла Disallow: /page.html
Файл по определенному адресу /путь/имя файла Disallow: /dir/page.html
Индексация папки /имя папки/ Disallow: /papka/
Индексация папки по определенному адресу /путь/имя папки/ Disallow: /dir/papka/
Документы, начинающиеся с определенного набора символов /символы /symbols
Документы, начинающиеся с определенного набора символов по адресу /путь/символы /dir/symbols

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

Про остальные операторы говорить смысла нет. Того, что написано выше вполне достаточно.

Вам, наверное, хотелось бы получить пример robots.txt? Ловите:

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: */trackback Disallow: */*/trackback Disallow: */*/feed/*/ Disallow: */feed Disallow: /tag Host: site.ru Sitemap:site.ru/sitemap.xml

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

До свидания, друзья!

Предыдущая статья
Следующая статья