Последовательно заполняйте все необходимые поля. По мере ваших указаний,
Вы будете видеть наполнение вашего Robots.txt директивами. Ниже подробно описаны все директивы файла Robots.txt.
Пометьте
,
скопируйте
и вставьте текст в текстовый редактор.
Сохраните файл как "robots.txt" в корневой директории Вашего сайта.
Описание формата файла robots.txt
Файл robots.txt состоит из записей, каждая из которых состоит из двух полей:
строки с названием клиентского приложения (user-agent), и одной или нескольких строк,
начинающихся с директивы Disallow:
Директива ":" значение
Robots.txt должен создаваться в текстовом формате Unix. Большинство хороших текстовых
редакторов уже умеют превращать символы перевода строки Windows в Unix.
Либо ваш FTP-клиент должен уметь это делать. Для редактирования не пытайтесь пользоваться HTML-редактором,
особенно таким, который не имеет текстового режима отображения кода.
Директива User-agent
:
Для Рамблера:
User-agent: StackRambler
Для Яндекса:
User-agent: Yandex
Для Гугла:
User-Agent: googlebot
Вы можете создать инструкцию для всех роботов:
User-agent: *
Директива Disallow
:
Вторая часть записи состоит из строк Disallow .
Эти строки - директивы (указания, команды) для данного робота. В каждой группе,
вводимой строкой User-agent, должна быть хотя бы одна инструкция Disallow .
Количество инструкций Disallow не ограничено.Они сообщают роботу какие файлы и/или
каталоги роботу неразрешено индексировать. Вы можете запретить индексацию файла или каталога.
Следующая директива запрещает индексацию каталога /cgi-bin/:
Disallow: /cgi-bin/
Обратите внимание на / в конце названия директории! Чтобы запрещать посещение именно
каталога "/dir" , инструкция должна иметь вид: "Disallow: /dir/" .
А строка "Disallow: /dir" запрещает посещение всех страниц сервера,
полное имя которых (от корня сервера) начинается с "/dir".
Например: "/dir.html", "/dir/index.html", "/directory.html".
Записанная следующим образом директива запрещает индексацию файла index.htm находящегося в корне:
Disallow: /index.htm
Директиву Allow
понимает только Яндекс.
User-agent: Yandex
Allow: /cgi-bin
Disallow: /
# запрещает скачивать все, кроме страниц начинающихся с "/cgi-bin"
Для остальных поисковиков вам придется перечислять все закрытые документы.
Продумайте структуру сайта, чтобы закрытые для индексирования документы были собраны по возможности в одном месте.
Если директива Disallow будет пустой, это значит, что робот может индексировать ВСЕ файлы.
Как минимум одна директива Disallow должна присутствовать для каждого поля User-agent ,
чтобы robots.txt считался верным. Полностью пустой robots.txt означает то же самое,
как если бы его не было вообще.
Робот Рамблера понимает * как любой символ, поэтому инструкция Disallow: * означает
запрещение индексации всего сайта.
Директивы Allow, Disallow без параметров.
Отсутствие параметров у директив Allow , Disallow трактуется следующим образом:
User-agent: Yandex
Disallow: # тоже что и Allow: /
User-agent: Yandex
Allow: # тоже что и Disallow: /
Использование спецсимволов "*" и "$"
.
При указании путей директив Allow-Disallow можно использовать спецсимволы "*" и "$",
задавая, таким образом, определенные регулярные выражения. Спецсимвол "*" означает любую
(в том числе пустую) последовательность символов. Примеры:
User-agent: Yandex
Disallow: /cgi-bin/*.aspx # запрещает "/cgi-bin/example.aspx"
и "/cgi-bin/private/test.aspx"
Disallow: /*private # запрещает не только "/private",
но и "/cgi-bin/private"
Спецсимвол "$"
.
По умолчанию к концу каждого правила, описанного в robots.txt, приписывается "*", например:
User-agent: Yandex
Disallow: /cgi-bin* # блокирует доступ к страницам начинающимся с "/cgi-bin"
Disallow: /cgi-bin # то же самое
чтобы отменить "*" на конце правила, можно использовать спецсимвол "$", например:
User-agent: Yandex
Disallow: /example$ # запрещает "/example", но не запрещает "/example.html"
User-agent: Yandex
Disallow: /example # запрещает и "/example", и "/example.html"
User-agent: Yandex
Disallow: /example$ # запрещает только "/example"
Disallow: /example*$ # так же, как "Disallow: /example"
запрещает и /example.html и /example
Директива Host
.
Если ваш сайт имеет зеркала, специальный робот зеркальщик определит их и сформирует группу зеркал вашего сайта.
В поиске будет участвовать только главное зеркало. Вы можете указать его при помощи robots.txt,
используя директиву "Host", определив в качестве ее параметра имя главного зеркала.
Директива "Host" не гарантирует выбор указанного главного зеркала, тем не менее,
алгоритм при принятии решения учитывает ее с высоким приоритетом. Пример:
#Если www.glavnoye-zerkalo.ru главное зеркало сайта, то robots.txt для
#www.neglavnoye-zerkalo.ru выглядит так
User-Agent: *
Disallow: /forum
Disallow: /cgi-bin
Host: www.glavnoye-zerkalo.ru
В целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt,
директиву "Host" необходимо добавлять в группе, начинающейся с записи "User-Agent",
непосредственно после директив "Disallow"("Allow"). Аргументом директивы "Host" является доменное
имя с номером порта (80 по умолчанию), отделенным двоеточием.
Параметр директивы Host обязан состоять из одного корректного имени хоста
(т.е. соответствующего RFC 952 и не являющегося IP-адресом) и допустимого номера порта.
Некорректно составленные строчки "Host:" игнорируются.
Примеры игнорируемых директив Host:
Host: www.myhost-.ru
Host: www.-myhost.ru
Host: www.myhost.ru:100000
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: 213.180.194.129
Host: www.firsthost.ru,www.secondhost.ru # в одной строке - один домен!
Host: www.firsthost.ru www.secondhost.ru # в одной строке - один домен!!
Host: экипаж-связь.рф # нужно использовать punycode
Директива Crawl-delay
Задает таймаут в секундах, с которым поисковый робот закачивает страницы с вашего сервера (Crawl-delay).
Если сервер сильно нагружен и не успевает отрабатывать запросы на закачку, воспользуйтесь директивой "Crawl-delay".
Она позволяет задать поисковому роботу минимальный период времени (в секундах) между концом закачки одной страницы и началом закачки следующей.
В целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt, директиву "Crawl-delay" необходимо добавлять в группе,
начинающейся с записи "User-Agent", непосредственно после директив "Disallow" ("Allow").
Поисковый робот Яндекса поддерживает дробные значения Crawl-Delay, например, 0.5.
Это не гарантирует, что поисковый робот будет заходить на ваш сайт каждые полсекунды,
но дает роботу больше свободы и позволяет ускорить обход сайта.
Директива для исключения параметров из адресной строки. т.е. запросы содержащие такой параметр и не содержащие - будут считаться идентичными.
Пустые строки и комментарии
Пустые строки допускаются между группами инструкций, вводимыми User-agent .
Инструкция Disallow учитывается, только если она подчинена какой-либо строке
User-agent - то есть если выше нее есть строка User-agent .
Любой текст от знака решетки " # " до конца строки считается комментарием и игнорируется.
Пример:
Следующий простой файл robots.txt
запрещает индексацию всех страниц сайта всем роботам, кроме робота Рамблера, которому, наоборот, разрешена индексация всех страниц сайта.
# Инструкции для всех роботов
User-agent: *
Disallow: /
# Инструкции для робота Рамблера
User-agent: StackRambler
Disallow:
Распространенные ошибки:
Перевернутый синтаксис:
User-agent: /
Disallow: StackRambler
А должно быть так:
User-agent: StackRambler
Disallow: /
Несколько директив Disallow в одной строке:
Disallow: /css/ /cgi-bin/ /images/
Правильно так:
Disallow: /css/
Disallow: /cgi-bin/
Disallow: /images/
Примечания:
Недопустимо наличие пустых переводов строки между директивами "User-agent" и "Disallow" ("Allow"), а также между самими "Disallow" ("Allow") директивами.
В соответствии со стандартом перед каждой директивой "User-agent" рекомендуется вставлять пустой перевод строки.
Файл robots.txt
— это обыкновенный файл с расширением.txt, который можно создать с помощью обыкновенного блокнота Windows. Данный файл содержит инструкции по индексации для поисковых роботов. Размещают этот файл корневой директории на хостинге.
При заходе на сайт поисковый робот первым делом обращаются к файлу robots.txt для того, чтобы получить инструкции к дальнейшему действию и узнать, какие файлы и директории запрещены к индексированию. Файл robots.txt
носит рекомендательный характер для поисковых систем. Нельзя стопроцентно сказать, что все файлы, на которые выставлен запрет к индексации, не будут в итоге индексироваться.
Рассмотрим простейший пример файла robots.txt. Данный файл содержит следующие строки:
Первая строка указывает для каких поисковых роботов действуют данные инструкции. В данном примере указана звездочка — это означает, что инструкции относятся ко всем поисковым роботам. В случае необходимости указания инструкции для конкретного поискового робота, необходимо прописать его имя. Вторая и третья строки запрещают индексацию директорий «wp-admin» и «images».
Для поискового робота Яндекса актуально также прописывать директорию Host для указания основного зеркала сайта:
При написании файла robots.txt часто допускаются ошибки. Для того, чтобы их избежать, давайте рассмотрим основные правила:
1. Писать содержимое файла нужно только в прописными буквами.
2. В инструкции Disallow необходимо указывать только одну директорию или один файл.
3. Строка «User-agent» не должна быть пустой. Если инструкция относится ко всем поисковым роботам, то необходимо указывать звёздочку, а если к конкретному поисковому роботу, то указывать его название.
4. Менять местами инструкции Disallow и User-agent нельзя.
5. В директиве Host, которая используется для Яндекса, адрес нашего сайта необходимо указывать без протокола HTTP и без закрывающего слэша.
6. При запрещении к индексации директорий необходимо обязательно прописывать слэши.
7. Следует проверить файл 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 поступают блоками
, каждый из которых содержит указания либо для конкретного робота, либо для всех роботов «*».
Кроме того, важно соблюдать правильный порядок и сортировку команд в 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
с совместными директивами:
Как составить правильный robots.txt
и как пользоваться трактовкой директив — ваш выбор. Оба варианта будут правильными. Главное — не запутайтесь.
Для правильного составления robots.txt необходимо точно указывать в параметрах директив приоритеты и то, что будет запрещено для скачивания роботам. Более полно использование директив «Disallow» и «Allow» мы рассмотрим чуть ниже, а сейчас рассмотрим синтаксис robots.txt. Знание синтаксиса robots.txt приблизит вас к тому, чтобы создать идеальный robots txt своими руками
.
Синтаксис robots.txt
Роботы поисковых систем добровольно следуют командам robots.txt
— стандарту исключений для роботов, однако не все поисковые системы трактуют синтаксис robots.txt одинаково. Файл robots.txt имеет строго определённый синтаксис, но в то же время написать robots txt
не сложно, так как его структура очень проста и легко понятна.
Вот конкретные список простых правил, следуя которым, вы исключите частые ошибки robots.txt
:
Каждая директива начинается с новой строки;
Не указывайте больше одной директивы в одной строке;
Не ставьте пробел в начало строки;
Параметр директивы должен быть в одну строку;
Не нужно обрамлять параметры директив в кавычки;
Параметры директив не требуют закрывающих точки с запятой;
Команда в robots.txt указывается в формате — [Имя_директивы]:[необязательный пробел][значение][необязательный пробел];
Допускаются комментарии в robots.txt после знака решетки #;
Пустой перевод строки может трактоваться как окончание директивы User-agent;
В директивах «Allow», «Disallow» указывается не более одного параметра;
Название файла robots.txt не допускает наличие заглавных букв, ошибочное написание названия файла — Robots.txt или ROBOTS.TXT;
Написание названия директив и параметров заглавными буквами считается плохим тоном и если по стандарту, robots.txt и нечувствителен к регистру, часто к нему чувствительны имена файлов и директорий;
Если параметр директивы является директорией, то перед название директории всегда ставится слеш «/», например: Disallow: /category
Слишком большие robots.txt (более 32 Кб) считаются полностью разрешающими, равнозначными «Disallow: »;
Недоступный по каким-либо причинам robots.txt может трактоваться как полностью разрешающий;
Если robots.txt пустой, то он будет трактоваться как полностью разрешающий;
В результате перечисления нескольких директив «User-agent» без пустого перевода строки, все последующие директивы «User-agent», кроме первой, могут быть проигнорированы;
Использование любых символов национальных алфавитов в 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: 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://».
В качестве основного зеркала указывается доменное имя www.mysite.ru.
Директива Host в файле robots.txt
может быть использована только один раз, если же директива Хост будет указана более одного раза, учитываться будет только первая, прочие директивы Host будут игнорироваться.
Если вы хотите указать главное зеркало для робота Google, воспользуйтесь сервисом Google Инструменты для вебмастеров.
Карта сайта: robots.txt sitemap
При помощи директивы Sitemap, в robots.txt можно указать расположение на сайте .
Указание адреса карты сайта через директиву Sitemap в robots.txt
позволяет поисковому роботу узнать о наличии карты сайта и начать ее индексацию.
Директива Clean-param
Директива Clean-param позволяет исключить из индексации страницы с динамическими параметрами. Подобные страницы могут отдавать одинаковое содержимое, имея различные URL страницы. Проще говоря, будто страница доступна по разным адресам. Наша задача убрать все лишние динамические адреса, которых может быть миллион. Для этого исключаем все динамические параметры, используя в 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 находится в корневом каталоге вашего сайта. Например, на сайте www.example.com адрес файла robots.txt будет выглядеть как www.example.com/robots.txt. Файл robots.txt представляет собой обычный текстовый файл, который соответствует стандарту исключений для роботов , и включает одно или несколько правил, каждое из которых запрещает или разрешает тому или иному поисковому роботу доступ к определенному пути на сайте.
Вот пример простого файла robots.txt с двумя правилами. Ниже приведены пояснения.
# Группа 1
User-agent: Googlebot
Disallow: /nogooglebot/
# Группа 2
User-agent: *
Allow: /
Sitemap: http://www.example.com/sitemap.xml
Пояснения
Агент пользователя с названием Googlebot не должен сканировать каталог http://example.com/nogooglebot/ и его подкаталоги.
У всех остальных агентов пользователя есть доступ ко всему сайту (можно опустить, результат будет тем же, так как полный доступ предоставляется по умолчанию).
Файл Sitemap этого сайта находится по адресу http://www.example.com/sitemap.xml.
Ниже представлено несколько советов по работе с файлами robots.txt. Мы рекомендуем вам изучить полный синтаксис этих файлов , так как используемые при их создании синтаксические правила являются неочевидными и вы должны разбираться в них.
Формат и расположение
Создать файл robots.txt можно почти в любом текстовом редакторе с поддержкой кодировки UTF-8. Не используйте текстовые процессоры, поскольку зачастую они сохраняют файлы в проприетарном формате и добавляют в них недопустимые символы, например фигурные кавычки, которые не распознаются поисковыми роботами.
При создании и тестировании файлов robots.txt используйте инструмент проверки . Он позволяет проанализировать синтаксис файла и узнать, как он будет функционировать на вашем сайте.
Правила в отношении формата и расположения файла
Файл должен носить название robots.txt.
На сайте должен быть только один такой файл.
Файл robots.txt нужно разместить в корневом каталоге
сайта. Например, чтобы контролировать сканирование всех страниц сайта http://www.example.com/ , файл robots.txt следует разместить по адресу http://www.example.com/robots.txt . Он не должен находиться в подкаталоге
(например, по адресу http://example.com/pages/robots.txt
). В случае затруднений с доступом к корневому каталогу обратитесь к хостинг-провайдеру. Если у вас нет доступа к корневому каталогу сайта, используйте альтернативный метод блокировки, например метатеги .
Файл robots.txt можно добавлять по адресам с субдоменами
(например, http://website
.example.com/robots.txt) или нестандартными портами (например, http://example.com:8181
/robots.txt).
Комментарием считается любой текст после символа #.
Синтаксис
Файл robots.txt должен представлять собой текстовый файл в кодировке UTF-8 (которая включает коды символов ASCII). Другие наборы символов использовать нельзя.
Файл robots.txt состоит из групп
.
Каждая группа
может содержать несколько правил
, по одному на строку. Эти правила также называются директивами
.
Группа включает следующую информацию:
К какому агенту пользователя
применяются директивы группы.
есть доступ
.
К каким каталогам или файлам у этого агента нет доступа
.
Инструкции групп считываются сверху вниз. Робот будет следовать правилам только одной группы с наиболее точно соответствующим ему агентом пользователя.
По умолчанию предполагается
, что если доступ к странице или каталогу не заблокирован правилом Disallow: , то агент пользователя может их обрабатывать.
Правила чувствительны к регистру
. Так, правило Disallow: /file.asp применимо к URL http://www.example.com/file.asp , но не к http://www.example.com/File.asp .
Директивы, которые используются в файлах robots.txt
User-agent:
Обязательная директива, в группе таких может быть несколько
. Определяет, к какому поисковому роботу
должны применяться правила. С такой строки начинается каждая группа. Большинство агентов пользователя, относящихся к роботам Google, можно найти в специальном списке и в базе данных роботов Интернета . Поддерживается подстановочный знак * для обозначения префикса, суффикса пути или всего пути. Используйте знак * , как показано в примере ниже, чтобы заблокировать доступ всем поисковым роботам (кроме роботов AdsBot
, которых нужно указывать отдельно). Рекомендуем ознакомиться со списком роботов Google . Примеры:
# Пример 1. Блокировка доступа только роботу Googlebot
User-agent: Googlebot
Disallow: /
# Пример 2. Блокировка доступа роботам Googlebot и AdsBot
User-agent: Googlebot
User-agent: AdsBot-Google
Disallow: /
# Пример 3. Блокировка доступа всем роботам, за исключением AdsBot
User-agent: *
Disallow: /
Disallow:
. Указывает на каталог или страницу относительно корневого домена, которые нельзя сканировать агенту пользователя, определенному выше. Если это страница, должен быть указан полный путь к ней, как в адресной строке браузера. Если это каталог, путь к нему должен заканчиваться косой чертой (/). Поддерживается подстановочный знак * для обозначения префикса, суффикса пути или всего пути.
Allow:
По крайней мере одна директива Disallow: или Allow: должна быть в каждой группе
. Указывает на каталог или страницу относительно корневого домена, которые можно сканировать агенту пользователя, определенному выше. Используется, для того чтобы отменить директиву Disallow и разрешить сканирование подкаталога или страницы в закрытом для сканирования каталоге. Если это страница, должен быть указан полный путь к ней, как в адресной строке браузера. Если это каталог, путь к нему должен заканчиваться косой чертой (/). Поддерживается подстановочный знак * для обозначения префикса, суффикса пути или всего пути.
Sitemap:
Необязательная директива, таких в файле может быть несколько или не быть совсем.
Указывает на расположение файла Sitemap, используемого на этом сайте. URL должен быть полным. Google не обрабатывает и не проверяет варианты URL с префиксами http и https или с элементом www и без него. Файлы Sitemap сообщают Google, какой контент нужно
сканировать и как отличить его от контента, который можно
или нельзя
сканировать. Пример:
Sitemap: https://example.com/sitemap.xml
Sitemap: http://www.example.com/sitemap.xml
Другие правила игнорируются.
Ещё один пример
Файл robots.txt состоит из групп. Каждая из них начинается со строки User-agent , определяющей робота, который должен следовать правилам. Ниже приведен пример файла с двумя группами и с поясняющими комментариями к обеим.
# Блокировать доступ робота Googlebot к каталогам example.com/directory1/... и example.com/directory2/...
# но разрешить доступ к каталогу directory2/subdirectory1/...
# Доступ ко всем остальным каталогам разрешен по умолчанию.
User-agent: googlebot
Disallow: /directory1/
Disallow: /directory2/
Allow: /directory2/subdirectory1/
# Блокировать доступ ко всему сайту другой поисковой системе.
User-agent: anothercrawler
Disallow: /
Полный синтаксис файла robots.txt
Полный синтаксис описан в этой статье . Рекомендуем вам ознакомиться с ней, так как в синтаксисе файла robots.txt есть некоторые важные нюансы.
Полезные правила
Вот несколько распространенных правил для файла robots.txt:
Правило
Пример
Запрет сканирования всего сайта.
Следует учесть, что в некоторых случаях URL сайта могут присутствовать в индексе, даже если они не были просканированы. Обратите внимание, что это правило не относится к роботам AdsBot , которых нужно указывать отдельно.
User-agent: *
Disallow: /
Чтобы запретить сканирование каталога и всего его содержания
, поставьте после названия каталога косую черту. Не используйте файл robots.txt для защиты конфиденциальной информации! Для этих целей следует применять аутентификацию. URL, сканирование которых запрещено файлом robots.txt, могут быть проиндексированы, а содержание файла robots.txt может просмотреть любой пользователь, и таким образом узнать местоположение файлов с конфиденциальной информацией.
Чтобы скрыть все изображения с вашего сайта от робота Google Картинок
User-agent: Googlebot-Image
Disallow: /
Чтобы запретить сканирование всех файлов определенного типа
(в данном случае GIF)
User-agent: Googlebot
Disallow: /*.gif$
Чтобы заблокировать определенные страницы сайта, но продолжать на них показ объявлений AdSense
, используйте правило Disallow для всех роботов, за исключением Mediapartners-Google. В результате этот робот сможет получить доступ к удаленным из результатов поиска страницам, чтобы подобрать объявления для показа тому или иному пользователю.
Чтобы указать URL, который заканчивается на определенном фрагменте
, применяйте символ $ . Например, для URL, заканчивающихся на.xls , используйте следующий код:
User-agent: Googlebot
Disallow: /*.xls$
Эта информация оказалась полезной?
Как можно улучшить эту статью?
Виды роботов Яндекса
Yandex/1.01.001 (compatible; Win16; I) - основной индексирующий робот
Bond, James Bond (version 0.07) - робот, заходящий на сайты из подсети Яндекса. Официально никогда не упоминался. Ходит выборочно по страницам. Referer не передает. Картинки не загружает. Судя по повадкам, робот занимается проверкой сайтов на нарушения – клоакинг и пр.
IP-адреса роботов Яндекса
IP-адресов, с которых «ходит» робот Яндекса, много, и они могут меняться. Список адресов не разглашается.
Кроме роботов у Яндекса есть несколько агентов-«простукивалок», которые определяют, доступен ли в данный момент сайт или документ, на который стоит ссылка в соответствующем сервисе.
Yandex/2.01.000 (compatible; Win16; Dyatel; C) - «простукивалка» Яндекс.Каталога. Если сайт недоступен в течение нескольких дней, он снимается с публикации. Как только сайт начинает отвечать, он автоматически появляется в Каталоге.
Yandex/2.01.000 (compatible; Win16; Dyatel; D) - «простукивалка» Яндекс.Директа. Она проверяет корректность ссылок из объявлений перед модерацией. Никаких автоматических действий не предпринимается.
Yandex/2.01.000 (compatible; Win16; Dyatel; N) - «простукивалка» Яндекс.Новостей. Она формирует отчет для контент-менеджера, который оценивает масштаб проблем и, при необходимости, связывается с партнером.
Директива Host
Во избежания возникновения проблем с зеркалами сайта рекомендуется использовать директиву «Host». Директива «Host» указывает роботу Яндекса на главное зеркало данного сайта. С директивой «Disallow» никак не связана.
Вопрос:
Когда планируется своевременное соблюдение директивы Host: в robots.txt? Если сайт индексируется как www.site.ru, когда указано Host: site.ru уже после того, как robots.txt был размещен 1–2 недели, то при этом сайт с www и без www не склеивается более 1–2 месяца и в Яндексе существуют одновременно 2 копии частично пересекающихся сайтов (один 550 страниц, другой 150 страниц, при этом 50 страниц одинаковых). Прокомментируйте, пожалуйста, проблемы с работой «зеркальщика». Ответ:
Расширение стандарта robots.txt, введенное Яндексом, директива Host - это не команда считать зеркалами два любых сайта, это указание, какой сайт из группы, определенных автоматически как зеркала, считать главным. Следовательно, когда сайты будут идентифицированы как зеркала, директива Host сработает.
HTML-тег
Робот Яндекса поддерживает тег noindex, который запрещает роботу Яндекса индексировать заданные (служебные) участки текста. В начале служебного фрагмента ставится , а в конце - , и Яндекс не будет индексировать данный участок текста.