Как написать файл robots txt: Как создать правильный файл robots.txt, настройка, директивы

Содержание

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

Файл robots.txt — текстовый файл в формате .txt, ограничивающий поисковым роботам доступ к содержимому на http-сервере.

Как определение, Robots.txt — это стандарт исключений для роботов, который был принят консорциумом W3C 30 января 1994 года, и который добровольно использует большинство поисковых систем. Файл robots.txt состоит из набора инструкций для поисковых роботов, которые запрещают индексацию определенных файлов, страниц или каталогов на сайте. Рассмотрим описание robots.txt для случая, когда сайт не ограничивает доступ роботам к сайту.

Простой пример:

User-agent: *
Allow: /

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

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

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

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

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

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

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

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

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

Cоздать 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_». Таким образом, закрываем все страницы с UTM-метками. Правильная настройка robots.txt запрещает наличие пустых переводов строки между директивами «User-agent», «Disallow» и директивами следующими за «Disallow» в рамках текущего «User-agent».

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

User-agent: Yandex

Disallow: /*utm_

Allow: /*id=

User-agent: *

Disallow: /*utm_

Allow: /*id=

Пример правильного перевода строки в 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 в Google: https://www.google.com/webmasters/tools/siteoverview?hl=ru

Для того, чтобы проверить 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-тегами:

  • <meta name=»robots» content=»noindex»/> — не индексировать содержимое страницы;
  • <meta name=»robots» content=»nofollow»/> — не переходить по ссылкам на странице;
  • <meta name=»robots» content=»none»/> — запрещено индексировать содержимое и переходить по ссылкам на странице;
  • <meta name=»robots» content=»noindex, nofollow»/> — аналогично 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 можно указать расположение на сайте файла карты сайта sitemap.xml.

Пример 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:

User-agent: *
# Комментарий может идти от начала строки
Disallow: /page # А может быть продолжением строки с директивой
# Роботы
# игнорируют
# комментарии
Host: www.mysite.ru

В заключении

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

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

Как составить robots.txt самостоятельно – PR-CY Блог

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

Как поисковики сканируют страницу


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


Зачем нужно сканирование:
  1. Собрать данные для построения индекса — информацию о новых страницах и обновлениях на старых.
  2. Сравнить URL в индексе и в списке для сканирования.
  3. Убрать из очереди дублирующиеся URL, чтобы не скачивать их дважды.


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


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

Как узнать, попала ли страница сайта в индекс Яндекса или Google


Какие страницы краулер просканирует быстрее:
  1. Находятся ближе к главной.

    Чем меньше кликов с главной ведет до страницы, тем она важнее и тем вероятнее ее посетит краулер. Количество переходов от главной до текущей страницы называется Click Distance from Index (DFI).
  2. Имеют много ссылок.

    Если многие ссылаются на страницу, значит она полезная и имеет хорошую репутацию. Нормальным считается около 11-20 ссылок на страницу, перелинковка между своими материалами тоже считается.
  3. Быстро загружаются.

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


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


Посмотреть на сайт глазами поискового бота

Robots.txt для Яндекса и Google


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


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


Требования к robots.txt:
  • файл называется «robots.txt«, название написано только строчными буквами, «Robots. TXT» и другие вариации не поддерживаются;
  • располагается только в корневом каталоге — https://site.com/robots.txt, в подкаталоге быть не может;
  • на сайте в единственном экземпляре;
  • имеет формат .txt;
  • весит до 32 КБ;
  • в ответ на запрос отдает HTTP-код со статусом 200 ОК;
  • каждый префикс URL на отдельной строке;
  • содержит только латиницу.


Если домен на кириллице, для robots.txt переведите все кириллические ссылки в Punycode с помощью любого Punycode-конвертера: «сайт.рф» — «xn--80aswg.xn--p1ai».


Robots.txt действует для HTTP, HTTPS и FTP, имеет кодировку UTF-8 или ASCII и направлен только в отношении хоста, протокола и номера порта, где находится.


Его можно добавлять к адресам с субдоменами —
http://web.site.com/robots.txt или нестандартными портами — http://site.com:8181/robots.txt. Если у сайта несколько поддоменов, поместите файл в корневой каталог каждого из них.


Как исключить страницы из индексации с помощью robots.txt


В файле robots.txt можно запретить ботам индексацию некоторого контента.


Яндекс поддерживает
стандарт исключений для роботов (Robots Exclusion Protocol). Веб-мастер может скрыть содержимое от индексирования ботами Яндекса, указав директиву «disallow». Тогда при очередном посещении сайта робот загрузит файл robots.txt, увидит запрет и проигнорирует страницу. Другой вариант убрать страницу из индекса — прописать в HTML-коде мета-тег «noindex» или «none».


Google предупреждает, что robots.txt не предусмотрен для блокировки показа страниц в результатах выдачи. Он позволяет запретить индексирование только некоторых типов контента: медиафайлов, неинформативных изображений, скриптов или стилей. Исключить страницу из выдачи Google можно с помощью пароля на сервере или элементов HTML — «noindex» или атрибута «rel» со значением «nofollow».


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


Закройте доступ к странице паролем или «nofollow» , если не хотите, чтобы она попала в выдачу Google. Если этого не сделать, ссылка попадет в результаты но будет выглядеть так:

Доступная для пользователей ссылка


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


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


Если нет доступа к robots.txt


Если вы не имеете доступа к robots.txt и не знаете, доступна ли страница в Google или Яндекс, введите ее URL в строку поиска.


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


В файле будут элементы, которые относятся к структуре сайтов на этой платформе, к примеру «noflashhtml» и «backhtml». Они не индексируются и никак не влияют на SEO.


Если нужно удалить из выдачи какие-то из страниц ресурса на Wix, используйте «noindex».

Как составить robots.txt правильно


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


Инструкции отделяют друг от друга переносом строки.


Символы robots.txt


«*» — означает любую последовательность символов в файле.


«$» — ограничивает действия «*», представляет конец строки.


«/» — показывает, что закрывают для сканирования.


«/catalog/» — закрывают раздел каталога;


«/catalog» — закрывают все ссылки, которые начинаются с «/catalog».


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

User-agent: *
Disallow: /catalog/
#запрещаем сканировать каталог


Директивы robots.txt


Директивы, которые распознают все краулеры:


User-agent


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


Для разного типа контента поисковики используют разных ботов:

  • Google: основной поисковый бот называется Googlebot, есть Googlebot News для новостей, отдельно Googlebot Images, Googlebot Video и другие;
  • Яндекс: основной бот называется YandexBot, есть YandexDirect для РСЯ, YandexImages, YandexCalendar, YandexNews, YandexMedia для мультимедиа, YandexMarket для Яндекс.Маркета и другие.


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


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


User-agent: Googlebot — только для основного поискового бота Google;


User-agent: YandexBot — только для основного бота Яндекса;


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


Sitemap


Указывает ссылку на
карту сайта — файл со структурой сайта, в котором перечислены страницы для индексации:

User-agent: *
Sitemap: http://site.com/sitemap.xml


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

Disallow


Правило показывает, какую информацию ботам сканировать не нужно.


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

User-agent: *
Disallow: /


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


Разрешить всем ботам сканировать весь сайт:

User-agent: *
Disallow:


Для этой цели можно оставить robots.txt пустым.


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

User-agent: BadBot 
Disallow: /


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

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


Запретить ботам сканировать страницу:

User-agent: *
Disallow: /page.html


Запретить сканировать конкретную папку с файлами:

User-agent: *
Disallow: /name/


Запретить сканировать все файлы, которые заканчиваются на «.pdf»:

User-agent: *
Disallow: /*.pdf$


Запретить сканировать раздел
http://site. com/about/:

User-agent: *
Disallow: /about/


Запись формата «Disallow: /about» без закрывающего «/» запретит доступ и к разделу
http://site.com/about/, к файлу http://site.com/about.php и к другим ссылкам, которые начинаются с «/about».


Если нужно запретить доступ к нескольким разделам или папкам, для каждого нужна отдельная строка с Disallow:

User-agent: *
Disallow: /about
Disallow: /info
Disallow: /album1

Allow

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


Разрешено сканировать все, что начинается с «/catalog», а все остальное запрещено:

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


Сканировать файл «photo. html» разрешено, а всю остальную информацию в каталоге /album1/ запрещено:

User-agent: *
Allow: /album1/photo.html 
Disallow: /album1/


Заблокировать доступ к каталогам «site.com/catalog1/» и «site.com/catalog2/» но разрешить к «catalog2/subcatalog1/»:

User-agent: * 
Disallow: /catalog1/ 
Disallow: /catalog2/ 
Allow: /catalog2/subcatalog1/


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


Директивы, которые распознают боты Яндекса:

Clean-param


Некоторые страницы дублируются с разными GET-параметрами или UTM-метками, которые не влияют на содержимое. К примеру, если в каталоге товаров использовали сортировку или разные id.


Чтобы отследить, с какого ресурса делали запрос страницы с книгой book_id=123, используют ref:


«www. site. com/some_dir/get_book.pl?ref=site_1& book_id=123″


«www.site. com/some_dir/get_book.pl?ref=site_2& book_id=123″


«www.site. com/some_dir/get_book.pl?ref=site_3& book_id=123″


Страница с книгой одна и та же, содержимое не меняется. Чтобы бот не сканировал все варианты таких страниц с разными параметрами, используют правило Clean-param:

User-agent: Yandex 
Disallow: 
Clean-param: ref/some_dir/get_book.pl


Робот Яндекса сведет все адреса страницы к одному виду:


«www.example. com/some_dir/get_book.pl? book_id=123″


Для адресов вида:


«www.example2. com/index.php? page=1&sid=2564126ebdec301c607e5df»


«www.example2. com/index.php? page=1&sid=974017dcd170d6c4a5d76ae»


robots.txt будет содержать:

User-agent: Yandex
Disallow:
Clean-param: sid/index.php


Для адресов вида


«www. example1. com/forum/showthread.php? s=681498b9648949605&t=8243″


«www.example1. com/forum/showthread.php? s=1e71c4427317a117a&t=8243″


robots.txt будет содержать:

User-agent: Yandex 
Disallow: 
Clean-param: s/forum/showthread.php


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


«www.example1.com/forum_old/showthread.php?s=681498605&t=8243&ref=1311″


«www.example1.com/forum_new/showthread.php?s=1e71c417a&t=8243&ref=9896″


robots.txt будет содержать:

User-agent: Yandex 
Disallow: 
Clean-param: s&ref/forum*/showthread.php
Host


Правило показывает, какое зеркало учитывать при индексации. URL нужно писать без «http://» и без закрывающего слэша «/».

User-agent: Yandex
Disallow: /about
Host: www.site.com


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


Crawl-delay

Раньше частая загрузка страниц нагружала сервер, поэтому для ботов устанавливали Crawl-delay — время ожидания робота в секундах между загрузками. Эту директиву можно не использовать, мощным серверам она не требуется.


Время ожидания — 4 секунды:

User-agent: *
Allow: /album1 
Disallow: /
Crawl-delay: 4

Только латиница


Напомним, что все кириллические ссылки нужно перевести в Punycode с помощью любого конвертера.


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

User-agent: Yandex 
Disallow: /каталог


Правильно:

User-agent: Yandex
Disallow: /xn--/-8sbam6aiv3a
Пример robots.txt


Запись означает, что правило справедливо для всех роботов: запрещено сканировать ссылки из корзины, из встроенного поиска и админки, карта сайта находится по ссылке
http://site. com/sitemap, ref не меняет содержание страницы get_book:

User-agent: *
Disallow: /bin/ 
Disallow: /search/ 
Disallow: /admin/ 
Sitemap: http://site.com/sitemap
Clean-param: ref/some_dir/get_book.pl

Инструменты для составления и проверки robots.txt


Составить robots.txt бесплатно поможет
инструмент для генерации robots.txt от PR-CY, он позволит закрыть или открыть весь сайт для ботов, указать путь к карте сайта, настроить ограничение на посещение страниц, закрыть доступ некоторым роботам и установить задержку:

Графы инструмента для заполнения


Для
проверки файла robots.txt на ошибки у поисковиков есть собственные инструменты:


Инструмент проверки файла robots.txt от Google позволит проверить, как бот видит конкретный URL. В поле нужно ввести проверяемый URL, а инструмент покажет, доступна ли ссылка.


Инструмент проверки от Яндекса покажет, правильно ли заполнен файл. Нужно указать сайт, для которого создан robots.txt, и перенести его содержимое в поле.



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

Страницы веб-роботов

В двух словах

Владельцы веб-сайтов используют файл /robots.txt для предоставления инструкций по
свой сайт веб-роботам; это называется Исключение роботов
Протокол
.

Это работает следующим образом: робот хочет просмотреть URL-адрес веб-сайта, скажем,
http://www.example.com/welcome.html. Прежде чем это сделать, он сначала
проверяет наличие http://www.example.com/robots.txt и находит:

 Агент пользователя: *
Запретить: /
 

«User-agent: *» означает, что этот раздел относится ко всем роботам.
«Запретить: /» сообщает роботу, что он не должен посещать
страницы на сайте.

При использовании файла /robots. txt необходимо учитывать два важных момента:

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

Так что не пытайтесь использовать /robots.txt, чтобы скрыть информацию.

Смотрите также:

  • Могу ли я заблокировать только плохих роботов?
  • Почему этот робот проигнорировал мой /robots.txt?
  • Каковы последствия файла /robots.txt для безопасности?

Детали

/robots.txt является стандартом де-факто и никому не принадлежит.
орган стандартов.
Есть два исторических описания:

  • оригинал 1994 г. Стандарт для роботов
    Документ об исключении.
  • Спецификация Internet Draft 1997 г. Метод для Интернета
    Управление роботами

Кроме того, есть внешние ресурсы:

  • HTML
    4.01 Спецификация, Приложение B.4.1
  • Википедия — Стандарт исключения роботов

Стандарт /robots.txt активно не разрабатывается.
См. Что насчет дальнейшего развития /robots.txt?
для дальнейшего обсуждения.

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

Как создать файл /robots.txt

Куда поставить

Краткий ответ: в каталоге верхнего уровня вашего веб-сервера.

Более длинный ответ:

Когда робот ищет файл «/robots.txt» для URL, он удаляет
компонент пути из URL (все, начиная с первой косой черты),
и помещает «/robots.txt» на свое место.

Например, для «http://www.example.com/shop/index.html будет
удалите «/shop/index.html» и замените его на
«/robots.txt», и в итоге получится
«http://www. example.com/robots.txt».

Итак, как владелец веб-сайта, вы должны поместить его в нужное место на своем веб-сайте.
веб-сервер, чтобы этот результирующий URL-адрес работал. Обычно это одно и то же
место, где вы размещаете приветствие «index.html» вашего веб-сайта
страница. Где именно это находится и как туда поместить файл, зависит от
программное обеспечение вашего веб-сервера.

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

Смотрите также:

  • Какую программу следует использовать для создания файла /robots.txt?
  • Как использовать /robots.txt на виртуальном хосте?
  • Как использовать /robots.txt на общем хосте?
Что положить

Файл «/robots.txt» — это текстовый файл с одной или несколькими записями.
Обычно содержит одну запись, имеющую вид:

Пользовательский агент: *
Запретить: /cgi-bin/
Запретить: /tmp/
Запретить: /~joe/
 

В этом примере исключены три каталога.

Обратите внимание, что вам нужна отдельная строка «Запретить» для каждого префикса URL, который вы
хотите исключить — вы не можете сказать «Disallow: /cgi-bin/ /tmp/» на
одна линия. Кроме того, в записи может не быть пустых строк, так как они
используются для разделения нескольких записей.

Также обратите внимание, что подстановка и регулярное выражение
не поддерживается либо в User-agent, либо в Disallow
линии. ‘*’ в поле User-agent — это специальное значение, означающее «любой
робот». В частности, у вас не может быть таких строк, как «User-agent: *bot*»,
«Запретить: /tmp/*» или «Запретить: *.gif».

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

Исключить всех роботов со всего сервера
Пользовательский агент: *
Запретить: /
 
Чтобы разрешить всем роботам полный доступ
Пользовательский агент: *
Запретить:
 

(или просто создайте пустой файл «/robots. txt», или вообще не используйте его)

Исключить всех роботов из части сервера
Пользовательский агент: *
Запретить: /cgi-bin/
Запретить: /tmp/
Запретить: /мусор/
 
Для исключения одного робота
Агент пользователя: BadBot
Запретить: /
 
Для одного робота
Агент пользователя: Google
Запретить:
Пользовательский агент: *
Запретить: /
 
Чтобы исключить все файлы, кроме одного

В настоящее время это немного неудобно, так как нет поля «Разрешить».
простой способ — поместить все файлы, которые нужно запретить, в отдельный
директории, произнесите «stuff» и оставьте один файл на уровне выше
этот каталог:

Пользовательский агент: *
Запретить: /~joe/stuff/
 

В качестве альтернативы вы можете явно запретить все запрещенные страницы:

Пользовательский агент: *
Запретить: /~joe/junk.html
Запретить: /~joe/foo.html
Запретить: /~joe/bar. html
 

Как добавить файл robots.txt

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

Что такое текстовый файл robots?

Файл robots.txt – это простой текстовый файл в формате ASCII, который сообщает поисковым системам, на какие сайты им нельзя заходить. Он также известен как стандарт исключения роботов. Любые файлы или папки, перечисленные в этом документе, не будут просканированы и проиндексированы поисковыми роботами. Наличие robots.txt, даже пустого, показывает, что вы признаете, что поисковые системы разрешены на вашем сайте и что они могут иметь к нему свободный доступ. Мы рекомендуем добавить текстовый файл robots в ваш основной домен и все поддомены на вашем сайте.

Параметры форматирования robots.txt

Создание файла robots.txt — простой процесс. Выполните следующие простые шаги:

  • Откройте Блокнот, Microsoft Word или любой текстовый редактор и сохраните файл как «роботы», все в нижнем регистре, обязательно выбрав .txt в качестве расширения типа файла (в Word выберите «Обычный текст»). .
  • Затем добавьте в файл следующие две строки текста:

User-agent: *
Disallow:

«User-agent» — это другое слово для роботов или пауков поисковых систем. Звездочка (*) означает, что эта строка относится ко всем паукам. Здесь нет файлов или папок, перечисленных в строке «Запретить», что означает, что каждый каталог на вашем сайте может быть доступен. Это основной текстовый файл robots.

  • Блокировка поисковых роботов на всем вашем сайте также является одной из опций robots.txt. Для этого добавьте в файл эти две строки:

User-agent: *
Disallow: /

  • Если вы хотите заблокировать пауков из определенных областей вашего сайта, ваш robots.

    This entry was posted in Популярное