Как найти ошибку в robot txt

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

Файл располагается в корневом каталоге сайта и доступен по адресу: domain.com/robots.txt.

Этот файл дает поисковым системам важные указания, которые напрямую будут влиять на результативность продвижения сайта. Использование Роботс может помочь:

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

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

Можно случайно запретить индексирование важных для продвижения страниц, и они не попадут в результаты поиска.

Например:

User-Agent: *
Disallow: /

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

Пустой или недоступный файл Роботс поисковые роботы воспринимают как разрешение на сканирование всего сайта.

Ниже приведены ссылки на инструкции по использованию файла:

  • от Яндекса;
  • от Google.

Какие директивы используются в robots.txt

User-agent

User-agent — основная директива, которая указывает, для какого поискового робота прописаны нижеследующие указания по индексации, например:

Для всех роботов:

User-agent: *

Для поискового робота Яндекс:

User-agent: Yandex

Для поискового робота Google:

User-agent: Googlebot

Disallow и Allow

Директива Disallow закрывает раздел или страницу от индексации. Allow — принудительно открывает страницы сайта для индексации (например, разрешает сканирование подкаталога или страницы в закрытом для обработки каталоге).

Операторы, которые используются с этими директивами: «*» и «$». Они применяются для указания шаблонов адресов при объявлении директив, чтобы не прописывать большой перечень конечных URL для блокировки.

* — спецсимвол звездочка обозначает любую последовательность символов. Например, все URL сайта, которые содержат значения, следующие после этого оператора, будут закрыты от индексации:

User-agent: *
Disallow: /cgi-bin* # блокирует доступ к страницам 
                    # начинающимся с '/cgi-bin'
Disallow: /cgi-bin # то же самое

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

User-agent: *
Disallow: /example$ # запрещает '/example', 
                    # но не запрещает '/example.html'

Crawl-delay

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

User-agent: *
Crawl-delay: 3.0 # задает тайм-аут в 3 секунды

С 22 февраля 2018 года Яндекс перестал учитывать директиву Crawl-delay. Чтобы задать скорость, с которой роботы будут загружать страницы сайта, используйте раздел «Скорость обхода сайта» в Яндекс.Вебмастере. Google также не поддерживает эту директиву. Для Google-бота установить частоту обращений можно в панели вебмастера Search Console. Однако роботы Bing и Yahoo соблюдает директиву Crawl-delay.

Clean-param

Директива используется только для робота Яндекса. Google и другие роботы не поддерживают Clean-param.

Директива указывает, что URL страниц содержат GET-параметры, которые не влияют на содержимое, и поэтому их не нужно учитывать при индексировании. Робот Яндекса, следуя инструкциям Clean-param, не будет обходить страницы с динамическими параметрами, которые полностью дублируют контент основных страниц.

Пример директивы Clean-param:

Clean-param: s /forum/showthread.php

Данная директива означает, что параметр «s» будет считаться незначащим для всех URL, которые начинаются с /forum/showthread.php.

Подробнее прочитать о директиве Clean-param можно в указаниях от Яндекс, ссылка на которые расположена выше.

Sitemap

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

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

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

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

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

User-agent: * # нижеследующие правила задаются для всех поисковых роботов
Allow: /      # сайт открыт для индексации
Sitemap: https://www.site.ru/sitemap.xml   # карта сайта для поисковых систем

Как найти ошибки в robots.txt с помощью Labrika?

Для проверки файла robots используйте Labrika. Она позволяет увидеть 26 видов ошибок в структуре файла – это больше, чем определяет сервис Яндекса. Отчет «Ошибки robots.txt » находится в разделе «Технический аудит» левого бокового меню. В отчете приводится содержимое строк файла. При наличии в какой-либо директиве проблемы Labrika дает её описание.

robots.txt

Ошибки robots.txt, которые определяет Labrika:

Сервис находит следующие:

Директива должна отделятся от правила символом «:».

Каждая действительная строка в файле Роботс должна состоять из имени поля, двоеточия и значения. Использовать пробелы не обязательно, но рекомендуется для удобства чтения. Для добавления комментария применяется символ решётки «#», который ставится перед его началом. Весь текст после символа «#» и до конца строки робот поисковой системы будет игнорировать.

Стандартный формат:

<field>:<value><#optional-comment>

Пример:

User-agent Googlebot

Пропущен символ “:”.

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

User-agent: Googlebot

Пустая директива и пустое правило.

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

Пример:

User-agent:

Не указан пользовательский агент.

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

User-agent: название бота 

Например:

User-agent: Googlebot

Директивы Allow или Disallow задаются в формате: directive: [path], где значение [path] (путь к странице или разделу) указывать не обязательно. Однако роботы игнорируют директивы Allow и Disallow без указания пути. В этом случае они могут сканировать весь контент. Пустая директива Disallow: равнозначна директиве Allow: /, то есть «не запрещать ничего».

Пример ошибки в директиве Sitemap:

Sitemap:

Не указан путь к карте сайта.

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

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

Перед правилом нет директивы User-agent

Правило должно всегда стоять после директивы User-agent. Размещение правила перед первым именем пользовательского агента означает, что никакие сканеры не будут ему следовать.

Пример:

Disallow: /category
User-agent: Googlebot

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

User-agent: Googlebot
Disallow: /category

Найдено несколько правил вида «User-agent: *»

Должна быть только одна директива User-agent для одного робота и только одна директива вида User-agent: * для всех роботов. Если в файле несколько раз указан один и тот же пользовательский агент с разными списками правил, то поисковым роботам будет сложно определить, какие из этих правил нужно учитывать. В результате возникает большая неопределенность в действиях роботов.

Пример:

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

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

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

Неизвестная директива

Обнаружена директива, которая не поддерживается поисковой системой (например, не описана в правилах использования Роботс от Яндекса).

Причины этого могут быть следующие:

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

Пример:

Disalow: /catalog

Директивы «Disalow» не существует, допущена опечатка в написании слова.

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

Disallow: /catalog

Количество правил в файле robots.txt превышает максимально допустимое

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

Например, если вам нужно заблокировать сканирование файлов PDF, не запрещайте каждый отдельный файл. Вместо этого запретите все URL-адреса, содержащие .pdf, с помощью директивы:

Disallow: /*.pdf

Правило превышает допустимую длину

Правило не должно содержать более 1024 символов.

Некорректный формат правила

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

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

Использование кириллицы и других национальных языков

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

Пример:

User-agent: Yandex
Sitemap: сайт.рф/sitemap.xml

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

User-agent: Yandex
Sitemap: https://xn--80aswg.xn--p1ai/sitemap.xml

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

Допускается использование спецсимволов «*» и «$». Например:

Disallow: /*.php$

Директива запрещает индексировать любые php файлы.

Если /*.php соответствует всем путям, которые содержат .php., то /*.php$ соответствует только тем путям, которые заканчиваются на .php.

Символ «$» прописан в середине значения

Знак «$» можно использовать только один раз и только в конце правила. Он показывает, что стоящий перед ним символ должен быть последним.

Пример:

Allow: /file$html

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

Allow: /file.html$

Правило начинается не с символа «/» и не с символа «*».

Правило может начинаться только с символов «/» и «*».

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

Пример:

Disallow: products

Правильным вариантом будет:

Disallow: /products

или

Disallow: *products

в зависимости от того, что вы хотите исключить из индексации.

Некорректный формат URL файла Sitemap

В качестве URL файла Sitemap должен быть указан полный адрес, который содержит обозначение протокола (http:// или https://), название домена (главная страница сайта), путь к файлу карты сайта, а также имя файла.

Пример:

Sitemap: /sitemap.xml

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

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

Некорректное имя главного зеркала сайта

Директива Host указывала роботу Яндекса главное зеркало сайта, если к веб-ресурсу был доступ по нескольким доменам. Остальные поисковые роботы её не воспринимали.

Директива Host могла содержать только протокол (необязательный) и домен сайта. Прописывался протокол https, если он использовался. Указывалась только одна директива Host. Если их было несколько, робот учитывал первую.

Пример:

User-agent: Yandex
Host: http://www.example.com/catalog
Host: https://example.com

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

User-agent: Yandex
Host: https://example.com

Некорректный формат директивы Crawl-delay

При указании в директиве Crawl-delay интервала между загрузками страниц можно использовать как целые значения, так и дробные. В качестве разделителя применяется точка. Единица измерения – секунды.

К ошибкам относят:

  • несколько директив Crawl-delay;
  • некорректный формат директивы Crawl-delay.

Пример:

Crawl-delay: 0,5 second

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

Crawl-delay: 0.5

Некорректный формат директивы Clean-param

Labrika определяет некорректный формат директивы Clean-param, например:

В именах GET-параметров встречается два или более знака амперсанд «&» подряд:

Clean-param: sort&&session /category

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

Clean-param: sort&session /category

Правило должно соответствовать виду «p0[&p1&p2&..&pn] [path]». В первом поле через символ «&» перечисляются параметры, которые роботу не нужно учитывать. Во втором поле указывается префикс пути страниц, для которых применяется правило. Параметры отделяются от префикса пути пробелом.

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

Префикс PATH URL для директивы Clean-param может включать только буквы латинского алфавита, цифры и некоторые символы: «.», «-«, «/», «*», «_».

Ошибкой считается и превышение допустимой длины правила — 500 символов.

Строка содержит BOM (Byte Order Mark) — символ U+FEFF

BOM (Byte Order Mark — маркер последовательности байтов) — символ вида U+FEFF, который находится в самом начале текста. Этот Юникод-символ используется для определения последовательности байтов при считывании информации.

Стандартные редакторы, создавая файл, могут автоматически присвоить ему кодировку UTF-8 с BOM меткой.

BOM – это невидимый символ. У него нет графического выражения, поэтому большинство редакторов его не показывает. Но при копировании этот символ может переноситься в новый документ.

Использование маркера последовательности байтов в файлах .html приводит к сбою настроек дизайна, смещению блоков, появлению нечитаемых наборов символов, поэтому рекомендуется удалять маркер из веб-скриптов и CSS-файлов.

Избавиться от ВОМ довольно сложно. Один из простых способов это сделать — открыть файл в редакторе, который может изменять кодировку документа, и пересохранить его с кодировкой UTF-8 без BOM.

Например, вы можете бесплатно скачать редактор Notepad++, открыть в нём файл с ВОМ меткой и выбрать во вкладке меню «Кодировки» пункт «Кодировать в UTF-8 (без BOM)».

Название

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

Как исправить ошибки в robots.txt?

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

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

Не забудьте добавить новую версию Роботс в Вебмастера.

robots.txt

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

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

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

  • На лишних страницах пользователь не найдет никакой полезной информации для себя. С большей долей вероятности он и вовсе не посетит эти страницы либо задержится на них недолго;

  • В выдаче поисковика присутствуют одни и те же страницы, адреса которых различны (то есть контент дублируется);

  • Поисковым роботам приходится тратить много времени, чтобы проиндексировать совершенно ненужные страницы. Вместо индексации полезного контента они будут бесполезно блуждать по сайту. Поскольку индексировать полностью весь ресурс робот не может и делает это постранично (так как сайтов очень много), то нужная информация, которую вы бы хотели получить после ведения запроса, возможно, будет найдена не очень быстро;

  • Очень сильно нагружается сервер.

В связи с этим является целесообразным закрытие доступа поисковым роботам к некоторым страницам веб-ресурсов.

Какие же файлы и папки можно запретить индексировать:

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

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

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

  4. Фильтры и сравнение товаров. Закрывать их нужно онлайн-магазинам и сайтам-каталогам.

  5. Страницы регистрации и авторизации. Закрывать их нужно в связи с конфиденциальностью вводимых пользователями при регистрации или авторизации данных. Недоступность этих страниц для индексации будет оценена Гуглом.

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

Закрыть файлы и страницы для индексации поможет файл robots.txt.

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

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

Местом нахождения файла robots.txt должен быть сервер, корень вашего ресурса. Файл robots.txt любого сайта доступен для просмотра в Сети. Чтобы увидеть его, нужно после адреса ресурса добавить /robots.txt.

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

Как проводится проверка robots.txt Яндексом

  1. Проверить файл поможет специальный сервис Яндекс.Вебмастера «Анализ robots.txt». Найти его можно по ссылке: http://webmaster.yandex.ru/robots.xml

    Чтобы войти в сервис, понадобится авторизация в системе. Если вы еще не проходили процедуру регистрации, то вам поможет пошаговая инструкция «Добавить сайт в Яндекс Вебмастер».

  2. В предлагаемую форму вам нужно ввести содержимое файла robots.txt, который нужно проверить на наличие ошибок. Есть два способа ввода данных:

    • Заходите на сайт, используя ссылку http://ваш-сайт.ру/robots.txt, копируете содержимое в пустое поле сервиса (при отсутствии файла robots.txt вам обязательно нужно его создать!);

    • Вставляете ссылку на проверяемый файл в поле «Имя хоста», нажимаете «Загрузить robots.txt с сайта» или Enter.

  3. Запуск проверки осуществляется нажатием команды «Проверить».

  4. После того как проверка запущена, можно провести анализ результатов.

После начала проверки анализатор разбирает каждую строку содержимого поля «Текст robots.txt» и анализирует директивы, которые он содержит. Кроме того, вы узнаете, будет ли робот обходить страницы из поля «Список URL».

Текст robots.txt

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

При проверке директив разделов, которые предназначены для робота Яндекса (User-agent: Yandex или User-agent:*), анализатор руководствуется правилами использования robots.txt. Остальные разделы проверяются в соответствии с требованиями стандарта. Когда анализатор разбирает файл, то выводит сообщение о найденных ошибках, предупреждает, если в написании правил есть неточности, перечисляет, какие части файла предназначены для робота Яндекса.

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

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

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

Сообщение об ошибке «Этот URL не принадлежит вашему домену» говорит о том, что в списке URL содержится адрес одного из зеркал вашего ресурса, к примеру, http://example.com вместо http://www.example.com (формально эти URL различны). Нужно, чтобы подлежащие проверке адреса относились к сайту, файл robots.txt которого анализируется.

Как осуществляется проверка robots.txt в Google

Инструмент Google Search Console позволяет вам провести проверку того, содержится ли в файле robots.txt запрет на сканирование роботом Googlebot определенных URL на вашем ресурсе. К примеру, у вас есть изображение, которое вы не хотите видеть в результатах поисковой выдачи Google по картинкам. С помощью инструмента вы узнаете, имеет ли робот Googlebot-Image доступ к этому изображению.

Для этого следует указать интересующий URL. После этого происходит обработка файла robots.txt инструментом проверки, аналогичная проверка роботом Googlebot. Это дает возможность определить, доступен ли этот адрес.

Кейс: VT-metall

Узнай как мы снизили стоимость привлечения заявки в 13 раз для металлообрабатывающей компании в Москве

Узнать как

Процедура проверки:

  • После выбора вашего ресурса в Google Search Console перейдите к инструменту проверки, который выдаст вам содержание файла robots.txt. Выделенный текст – это ошибки в синтаксисе или логические. Их количество указывается под окном редактирования.

  • В нижней части страницы интерфейса вы увидите специальное окно, в которое нужно ввести URL.

  • Справа появится меню, из которого необходимо выбрать робота.

  • Нажмите на кнопку «Проверить».

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

  • Если нужно, вы можете изменить меню и провести новую проверку. Внимание! Автоматического внесения изменений в файл robots.txt на вашем ресурсе не произойдет.

  • Скопируйте изменения и внесите их в файл robots.txt на вашем веб-сервере.

обработка файла robots.txt

На что нужно обратить внимание:

  1. Сохранения сделанных в редакторе изменений на веб-сервере не происходит. Понадобится копирование полученного кода и вставки его в файл robots.txt.

  2. Получить результаты проверки файла robots.txt инструментом могут только агенты пользователя Google и роботы, относящиеся к Google (к примеру, робот Googlebot). При этом гарантии того, что интерпретация содержания вашего файла роботами других поисковых систем будет аналогичной, нет.

15 ошибок при проверке файла robots.txt

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

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

    • User-agent: /

    • Disallow: Yandex

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

    • User-agent: Yandex

    • Disallow: /

  2. Указание нескольких каталогов в одной инструкции Disallow

    Часто владельцы Интернет-ресурсов стараются прописать все каталоги, которые они хотят запретить индексировать, в одной инструкции Disallow.

    Disallow: /css/ /cgi-bin/ /images/

    Такая запись не соответствует требованиям стандарта, предсказать, какой будет обработка ее разными роботами, невозможно. Одни из них могут проигнорировать пробелы. Их интерпретация записи будет такой: «Disallow: /css/cgi-bin/images/». Другими может быть использована лишь первая или последняя папка. Третьи и вовсе могут отбросить инструкцию, не поняв ее.

    Есть вероятность того, что обработка этой конструкции будет именно такой, на которую рассчитывал мастер, но все же лучше написать правильно:

    • Disallow: /css/

    • Disallow: /cgi-bin/

    • Disallow: /images/

  3. В имени файла присутствуют заглавные буквы

    Правильное название файла — robots.txt, а не Robots.txt или ROBOTS.TXT.

  4. Написание имени файла как robot.txt вместо robots.txt

    Запомните, правильно называть файл robots.txt.

  5. Оставление строки в User-agent пустой

    Неправильный вариант:

    • User-agent:

    • Disallow:

    Верно:

    • User-agent: *

    • Disallow:

  6. Написание Url в директиве Host

    URL нужно указывать, не используя аббревиатуру протокола передачи гипертекста (http://) и закрывающий слеш (/).

    Неверная запись:

    • User-agent: Yandex

    • Disallow: /cgi-bin

    • Host: http://www.site.ru/

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

    • User-agent: Yandex

    • Disallow: /cgi-bin

    • Host: www.site.ru

    Корректным использование директивы host является только для робота Яндекса.

  7. Использование в инструкции Disallow символов подстановки

    Иногда, чтобы указать все файлы file1.html, file2.html, file3.html и т.д, веб-мастер может написать:

    • User-agent: *

    • Disallow: file*.html

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

  8. Использование для написания комментариев и инструкций одной строки

    Стандарт разрешает такие записи:

    Disallow: /cgi-bin/ #запрещаем роботам индексировать cgi-bin

    Раньше обработка таких строк некоторыми роботами была невозможна. Может быть, в настоящее время ни у одного поисковика не возникнет с этим проблем, но стоит ли идти на риск? Лучше размещать комментарии на отдельной строке.

  9. Редирект на страницу 404-й ошибки

    Нередко, если сайт не имеет файла robots.txt, то при его запросе поисковик будет переадресовывать на другую страницу. Иногда при этом не происходит отдачи статуса 404 Not Found. Роботу приходится самому разбираться, что он получил — robots.txt или обычный html-файл. Это не является проблемой, но лучше, если в корне сайта будет размещен пустой файл robots.txt.

  10. Использование заглавных букв – признак плохого стиля

    USER-AGENT: GOOGLEBOT

    DISALLOW:

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

    User-agent: googlebot

    Disallow:

  11. Перечисление всех файлов

    Неправильным будет перечислять каждый файл в директории в отдельности:

    • User-agent: *

    • Disallow: /AL/Alabama.html

    • Disallow: /AL/AR.html

    • Disallow: /Az/AZ.html

    • Disallow: /Az/bali.html

    • Disallow: /Az/bed-breakfast.html

    Правильным будет закрытие от индексации полностью всей директории:

    • User-agent: *

    • Disallow: /AL/

    • Disallow: /Az/

  12. Использование дополнительных директив в секции *

    Может иметь место неправильная реакция некоторых роботов на использование дополнительных директив. Поэтому применение их в секции «*» является нежелательным.

    Если директива не является стандартной (как, например, «Host»), то для нее лучше создать специальную секцию.

    Неверный вариант:

    • User-agent: *

    • Disallow: /css/

    • Host: www.example.com

    Правильно будет написать:

    • User-agent: *

    • Disallow: /css/

    • User-agent: Yandex

    • Disallow: /css/

    • Host: www.example.com

  13. Отсутствие инструкции Disallow

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

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

    • User-agent: Yandex

    • Host: www.example.com

    Правильно:

    • User-agent: Yandex

    • Disallow:

    • Host: www.example.com

  14. Неиспользование слешей, когда указывается директория

    Каковы будут действия робота в этом случае?

    • User-agent: Yandex

    • Disallow: john

    Согласно стандарту, индексация не будет проведена для как для файла, так и для директории с именем «john». Чтобы указать только директорию, нужно написать:

    • User-agent: Yandex

    • Disallow: /john/

  15. Неправильное написание HTTP-заголовка

    Сервер должен возвращать в HTTP-заголовке для robots.txt «Content-Type: text/plain» а, например, не «Content-Type: text/html». Если заголовок будет написан неправильно, то обработка файла некоторыми роботами будет невозможна.

Как правильно составить файл, чтобы проверка robots.txt не выявляла ошибок

Каким должен быть правильный файл robots.txt для Интернет-ресурса? Рассмотрим его структуру:

User-agent

Эта директива является основной, она определяет, для каких роботов написаны правила.

Если для любого робота, пишем:

User-agent: *

Если для конкретного бота:

User-agent: GoogleBot

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

user-agent: googlebot

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

Бот Функция
Google
Googlebot основной индексирующий робот Google
Googlebot-News Google Новости
Googlebot-Image Google Картинки
Googlebot-Video видео
Mediapartners-Google Google AdSense, Google Mobile AdSense
Mediapartners Google AdSense, Google Mobile AdSense
AdsBot-Google проверка качества целевой страницы
AdsBot-Google-Mobile-Apps Робот Google для приложений
Яндекс
YandexBot основной индексирующий робот Яндекса
YandexImages Яндекс.Картинки
YandexVideo Яндекс.Видео
YandexMedia мультимедийные данные
YandexBlogs робот поиска по блогам
YandexAddurl робот, обращающийся к странице при добавлении ее через форму «Добавить URL»
YandexFavicons робот, индексирующий пиктограммы сайтов (favicons)
YandexDirect Яндекс.Директ
YandexMetrika Яндекс.Метрика
YandexCatalog Яндекс.Каталог
YandexNews Яндекс.Новости
YandexImageResizer робот мобильных сервисов
Bing
Bingbot основной индексирующий робот Bing
Yahoo!
Slurp основной индексирующий робот Yahoo!
Mail.Ru
Mail.Ru основной индексирующий робот Mail.Ru

Disallow и Allow

Disallow позволяет запретить индексирование страниц и разделов Интернет-ресурса.

Allow служит для принудительного открытия их для индексирования.

Но пользоваться ими достаточно непросто.

Во-первых, нужно ознакомиться с дополнительными операторами и правилами их использования. К ним относятся: *, $ и #.

  • * —любое количество символов, даже их отсутствие. Ставить этот оператор в конце строки не обязательно, подразумевается, что она там стоит по умолчанию;

  • $ — показывает, что стоящий перед ним символ должен быть последним;

  • # — этот оператор служит для обозначения комментария, любая информация после него роботом в расчет не берется.

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

  • Disallow: *?s=

  • Disallow: /category/$

Не могут быть проиндексированы такие ссылки:

Эти ссылки, наоборот, открыты для индексации:

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

Не имеет значения, в каком порядке записаны директивы. Определение наследования правил (что открыть или закрыть от индексации) осуществляется по указанным директориям. Приведем пример.

Allow: *.css

Disallow: /template/

  • http://site.ru/template/ rel=»nofollow» — закрыто от индексирования

  • http://site.ru/template/style.css rel=»nofollow» — закрыто от индексирования

  • http://site.ru/style.css rel=»nofollow» — открыто для индексирования

  • http://site.ru/theme/style.css rel=»nofollow» — открыто для индексирования

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

  • Allow: *.css

  • Allow: /template/*.css

  • Disallow: /template/

Напомним еще раз: не важно, в каком порядке записаны директивы.

Sitemap

Эта директива указывает путь к XML-файлу Sitemap. URL-адрес имеет такой же вид, что и в адресной строке.

К примеру,

Sitemap: http://site.ru/sitemap.xml rel=»nofollow»

Указание директивы Sitemap возможно в любом месте файла robots.txt, при этом не требуется привязывать ее к конкретному user-agent. Разрешается указывать несколько правил Sitemap.

Host

Эта директива указывает главное зеркало ресурса (как правило, с www или без www). Помните: при указании главного зеркала пишется не http://, а https://. В случае необходимости указывается и порт.

Поддержка этой директивы возможна только ботами Яндекса и Mail.Ru. Другие роботы, в том числе и GoogleBot, эту команду не учитывают. Прописывать host можно только один раз!

Пример 1:

Host: site.ru

Пример 2:

Crawl-delay

Позволяет установить, через какой промежуток времени роботу нужно скачивать страницы ресурса. Директиву поддерживают роботы Яндекса, Mail.Ru, Bing, Yahoo. При установке интервала можно использовать как целые значения, так и дробные, используя в качестве разделителя применяется точка. Единица измерения — секунды.

Пример 1:

Crawl-delay: 3

Пример 2:

Crawl-delay: 0.5

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

Чем больше устанавливаемый интервал, тем меньше будет количество загрузок в течение одной сессии. Оптимальное значение для каждого ресурса свое. Сначала рекомендуется ставить небольшие значения (0.1, 0.2, 0.5), затем постепенно увеличивая их. Для роботов поисковиков, не особо важных для результатов продвижения (к примеру, Mail.Ru, Bing и Yahoo), можно сразу устанавливать значения, бóльшие, нежели для роботов Яндекса.

Clean-param

Эта директива нужна для сообщения краулеру (поисковому роботу) о ненужности индексации URL-адресов с указанными параметрами. Для правила указываются два аргумента: параметр и URL раздела. Яндекс поддерживает директиву.

Пример 1:

http://site.ru/articles/?author_id=267539 — не подвергнется индексации

Пример 2:

Clean-param: author_id sid http://site.ru/articles/

http://site.ru/articles/?author_id=267539&sid=0995823627 — не подвергнется индексации

Яндексом также рекомендовано использование этой директивы, чтобы не учитывались UTM-метки и идентификаторы сессий. Пример:

Clean-Param: utm_source utm_medium utm_campaign

Другие параметры

Расширенная спецификация robots.txt содержит еще такие параметры: Request-rate и Visit-time. Но в настоящее время отсутствует поддержка их ведущими поисковиками.

Директивы нужны для следующего:

  • Request-rate: 1/5 — разрешает загрузку не более 1 страницы за 5 секунд

  • Visit-time: 0600-0845 — разрешает загрузку страниц только с 6 утра до 8:45 по Гринвичу

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

  1. Запретите индексировать админку сайта;

  2. Закройте доступ роботам к личному кабинету, страницам авторизации и регистрации;

  3. Запретите индексировать корзину, формы заказа, данные по доставке и заказам;

  4. Закройте от индексирования ajax, json-скрипты;

  5. Запретите индексировать папку cgi;

  6. Запретите индексировать плагины, темы оформления, js, css для роботов всех поисковых систем, кроме Яндекса и Google;

  7. Закройте доступ роботам к функционалу поиска;

  8. Запретите индексировать служебные разделы, не являющиеся ценными для ресурса в поиске (ошибка 404, список авторов);

  9. Закройте от индексирования технические дубли страниц и страницы, контент которых в той или иной степени дублирует содержимое других страниц (календари, архивы, RSS);

  10. Запретите индексировать страницы с параметрами фильтров, сортировки, сравнения;

  11. Запретите индексировать страницы с параметрами UTM-меток и сессий;

  12. Используйте для проверки того, что проиндексировал Яндекс и Google, параметр «site:». Для этого в строку поиска введите «site:site.ru». Если в поисковой выдаче есть страницы, которые не нужно индексировать, добавьте их в robots.txt;

  13. Пропишите правила Sitemap и Host;

  14. Если необходимо, укажите Crawl-Delay и Clean-Param;

  15. Проведите проверку корректности файла robots.txt, используя инструменты Google и Яндекса;

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

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

Скачайте полезный документ по теме:

Чек-лист: Как добиваться своих целей в переговорах с клиентами

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

Дмитрий Свистунов

Статья опубликована: 03.01.2018

Облако тегов

Понравилась статья? Поделитесь:

Robots.txt — это текстовый файл, который показывает поисковым роботам, как сканировать ваш сайт. Он защищает сайт и сервер от перегрузки из-за запросов поисковых роботов.

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

Арни не одобряет

Арни не одобряет

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

Но для начала поговорим подробнее о robots.txt и его альтернативах.

Что такое файл robots.txt

Robots.txt — это файл в простом текстовом формате. Он размещается в корневом каталоге сайта (самый верхний каталог в иерархии). Если файл размещен в другом каталоге, поисковые роботы будут его игнорировать. Несмотря на всю мощь robots.txt, выглядит он как простой текстовый документ. А создать его можно за пару секунд в любом текстовом редакторе.

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

Можно использовать и HTTP-заголовок X-Robots-Tag, который задает настройки на уровне страницы.

Что делает robots.txt

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

Блокировка сканирования поисковыми роботами определенных страниц

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

Блокировка медиафайлов для отображения в результатах поиска

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

Голова раскалывается от этих ваших ограничений

Голова раскалывается от этих ваших ограничений

Блокировка файлов ресурсов с неважными внешними скриптами

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

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

Насколько опасны ошибки с Robots.txt

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

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

Шесть главных ошибок robots.txt

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

Ошибка № 1. Robots.txt находится не в корневом каталоге

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

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

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

Ошибка № 2. Неправильное использование символа-джокера или символа подстановки

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

  • Звездочка, или астериск (*). Она представляет любые варианты допустимого символа. Своего рода аналог карты джокера.
  • Значок доллара $. Обозначает конец URL, позволяет добавлять правила к последней части URL, например, файловое расширение.

При использовании символов-джокеров стоит придерживаться минимализма. Они могут потенциально наложить ограничения на большую часть сайта. Неправильное использование астерикса может привести к блокировке поискового робота. Чтобы решить проблему с неправильным символом-джокером, нужно его найти и переместить или удалить.

Ошибка № 3. Тег noindex в robots.txt

Эта ошибка часто встречается у сайтов, которым уже несколько лет. Google в сентябре 2019 года перестал выполнять команды метатега noindex в файле robots.txt.

Думали, меня так просто остановить?

Думали, меня так просто остановить?

Если ваш файл был создан до этой даты или содержит метатег noindex, скорее всего, страницы будут индексироваться Google.

Чтобы решить проблему, примените альтернативный метод. Вы можете добавить метатег robots в элемент страницы <head>, чтобы остановить индексацию.

Ошибка № 4. Блокировка скриптов и страниц стилей

Ограничение доступа к внутреннему JavaScript коду и Cascading Style Sheets (CSS) для поисковых роботов кажется логичным шагом. Однако поисковым роботам Google требуется доступ к CSS и JavaScript файлам, чтобы корректно сканировать HTML и PHP страницы.

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

Если же вам нужна блокировка определенных файлов, вставьте исключение, которое даст поисковым роботам доступ только к нужным материалам.

Ошибка № 5. Отсутствует ссылка на файл sitemap.xml

Этот пункт относится к SEO больше всего. Файл sitemap.xml дает роботам информацию о структуре сайта и его главных страницах. Поэтому есть смысл добавить его в файл robots.txt. Его поисковые роботы Google сканируют в первую очередь.

Строго говоря, это не ошибка, и в большинстве случаев отсутствие ссылки на sitemap в robots.txt не должно влиять на функциональность и внешний вид сайта. Но если вы хотите улучшить продвижение, дополните файл robots.txt

Ошибка № 6. Доступ к страницам в разработке

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

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

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

User-Agent: *

Disallow: /

Наличие косой черты в строке Disallow делает сайт невидимым для поисковых роботов. Корректируйте строку в соответствии с нужным вам эффектом.

Как восстановиться после ошибок в robots.txt

Если ошибка в файле robots.txt повлияла на отображение в поисковой выдаче, самое главное — скорректировать файл и подтвердить, что новые правила дают нужный эффект. Проверить это можно с помощью инструментов для сканирования, например, Screaming Frog.

Немного тепла — и все встанет на круги своя

Немного тепла — и все встанет на круги своя

Когда убедитесь, что robots.txt работает верно, запросите повторное сканирование поисковыми роботами. В этом поможет Google Search Console. Добавьте обновленный файл sitemap и запросите повторное сканирование страниц, которые пострадали.

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

Профилактика важнее всего

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

Если есть возможность, протестируйте изменения в песочнице, прежде чем применять их на реальном сервере.

Песочница — специально выделенная (изолированная) среда для безопасного исполнения компьютерных программ.

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

Traders

Андрей

@Traders

Фото-иллюстратор, предприниматель

Посмотрите, пожалуйста, скриншот. Нужно указывать все поисковые системы, или как там это правильно называется, в User-agent: * ? Yandex, Googlebot
Пока не обновил файл robot.txt, боюсь испортить. Нет ничего лишнего или может что забыл? Буду очень благодарен. Sitemap нужно все 5 указывать? Одна ссылка ведет на все 5

37943a03abb0454390c0e70fe51eae39.png09214c0c287f4549aaac5eb7ae87bc41.png

Исправил, так лучше? Ничего лишнего?
User-agent: *
Allow: /
Disallow: /wp-admin
Disallow: */feed
Disallow: /cgi-bin
Disallow: /xmlrpc.php?rsd
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: /category/
Disallow: /author/
Disallow: /*?*
Disallow: /tag
Disallow: /js/
Disallow: /20*/*
Sitemap: andreyalexandrov.com/sitemap_index.xml
Host: andreyalexandrov.com

User-agent: Googlebot-Image
Allow: /wp-content/uploads/

User-agent: YandexImages
Allow: /wp-content/uploads/


  • Вопрос задан

    более трёх лет назад

  • 911 просмотров

добавьте в самый конец директиву Host:: http://andreyalexandrov.com
С sitemap все нормально

и еще возможно вот это
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: /*?*
Disallow: /tag

ну и в самый конец спец-правила

User-agent: Googlebot-Image
Allow: /wp-content/uploads/

User-agent: YandexImages
Allow: /wp-content/uploads/

Имеем такой robots.txt для wordpress, индексирует отлично:

User-agent: *
Allow: /wp-content/uploads
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed
Disallow: */feed
Disallow: /*?*
Disallow: /comment-page-*
Disallow: /*/?replytocom=*
Disallow: /tag
Disallow: /category/
Disallow: /author/
Disallow: /20*/*
Disallow: /page/*

User-agent: Yandex
Allow: /wp-content/uploads
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed
Disallow: /*?*
Disallow: */feed
Disallow: /comment-page-*
Disallow: /*/?replytocom=*
Disallow: /tag
Disallow: /category/
Disallow: /author/
Disallow: /js/
Disallow: /20*/*
Disallow: /page/*
Host: www.famreal.com

User-agent: Googlebot-Image
Allow: /wp-content/uploads/

User-agent: YandexImages
Allow: /wp-content/uploads/

Sitemap: www.famreal.com/sitemap.xml

Пригласить эксперта

Disallow /wp-admin уберите слеш в конце
Sitemap кушает только один параметр, бот кушает только один Sitemap. Склейте пять документов в один или сделайте один индекс-файл по нескольким sitemap.

Нужно прописать отдельно для Яндекса (добавить директиву Host:), Гугла и для всех.


  • Показать ещё
    Загружается…

12 июн. 2023, в 19:14

25000 руб./за проект

12 июн. 2023, в 18:45

15000 руб./за проект

12 июн. 2023, в 18:41

20000 руб./за проект

Минуточку внимания

В этой статье мы рассмотрим:

  • Что такое robots.txt?
  • Все директивы файла:
    • Disallow и Allow
    • Sitemap
    • Host
    • Crawl-delay
    • Clean-param
  • Использование спецсимволов
  • Как проверить корректную работу файла
  • Часто допускаемые ошибки
  • Примеры robots.txt для различных CMS:
    • WordPress
    • Joomla
    • Bitrix

Что такое robots.txt?

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

Обход сайта поисковыми роботами начинается с поиска файла роботс. Отсутствие файла не является критической ошибкой. В таком случае роботы считают, что ограничений для них нет и они полностью могут сканировать сайт.
Файл должен быть размещён в корневом каталоге сайта и быть доступен по адресу https://mysite.com/robots.txt.

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

Указывать директивы в файле нужно только латиницей, использовать кириллицу запрещено. Русские доменные имена можно преобразовать с помощью кодировки Punycode.

Если домен указан на кириллице нужно декодировать с помощью Punycode

На что нужно обратить внимание:

  1. Сохранения сделанных в редакторе изменений на веб-сервере не происходит. Понадобится копирование полученного кода и вставки его в файл robots.txt.

  2. Получить результаты проверки файла robots.txt инструментом могут только агенты пользователя Google и роботы, относящиеся к Google (к примеру, робот Googlebot). При этом гарантии того, что интерпретация содержания вашего файла роботами других поисковых систем будет аналогичной, нет.

15 ошибок при проверке файла robots.txt

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

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

    • User-agent: /

    • Disallow: Yandex

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

    • User-agent: Yandex

    • Disallow: /

  2. Указание нескольких каталогов в одной инструкции Disallow

    Часто владельцы Интернет-ресурсов стараются прописать все каталоги, которые они хотят запретить индексировать, в одной инструкции Disallow.

    Disallow: /css/ /cgi-bin/ /images/

    Такая запись не соответствует требованиям стандарта, предсказать, какой будет обработка ее разными роботами, невозможно. Одни из них могут проигнорировать пробелы. Их интерпретация записи будет такой: «Disallow: /css/cgi-bin/images/». Другими может быть использована лишь первая или последняя папка. Третьи и вовсе могут отбросить инструкцию, не поняв ее.

    Есть вероятность того, что обработка этой конструкции будет именно такой, на которую рассчитывал мастер, но все же лучше написать правильно:

    • Disallow: /css/

    • Disallow: /cgi-bin/

    • Disallow: /images/

  3. В имени файла присутствуют заглавные буквы

    Правильное название файла — robots.txt, а не Robots.txt или ROBOTS.TXT.

  4. Написание имени файла как robot.txt вместо robots.txt

    Запомните, правильно называть файл robots.txt.

  5. Оставление строки в User-agent пустой

    Неправильный вариант:

    • User-agent:

    • Disallow:

    Верно:

    • User-agent: *

    • Disallow:

  6. Написание Url в директиве Host

    URL нужно указывать, не используя аббревиатуру протокола передачи гипертекста (http://) и закрывающий слеш (/).

    Неверная запись:

    • User-agent: Yandex

    • Disallow: /cgi-bin

    • Host: http://www.site.ru/

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

    • User-agent: Yandex

    • Disallow: /cgi-bin

    • Host: www.site.ru

    Корректным использование директивы host является только для робота Яндекса.

  7. Использование в инструкции Disallow символов подстановки

    Иногда, чтобы указать все файлы file1.html, file2.html, file3.html и т.д, веб-мастер может написать:

    • User-agent: *

    • Disallow: file*.html

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

  8. Использование для написания комментариев и инструкций одной строки

    Стандарт разрешает такие записи:

    Disallow: /cgi-bin/ #запрещаем роботам индексировать cgi-bin

    Раньше обработка таких строк некоторыми роботами была невозможна. Может быть, в настоящее время ни у одного поисковика не возникнет с этим проблем, но стоит ли идти на риск? Лучше размещать комментарии на отдельной строке.

  9. Редирект на страницу 404-й ошибки

    Нередко, если сайт не имеет файла robots.txt, то при его запросе поисковик будет переадресовывать на другую страницу. Иногда при этом не происходит отдачи статуса 404 Not Found. Роботу приходится самому разбираться, что он получил — robots.txt или обычный html-файл. Это не является проблемой, но лучше, если в корне сайта будет размещен пустой файл robots.txt.

  10. Использование заглавных букв – признак плохого стиля

    USER-AGENT: GOOGLEBOT

    DISALLOW:

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

    User-agent: googlebot

    Disallow:

  11. Перечисление всех файлов

    Неправильным будет перечислять каждый файл в директории в отдельности:

    • User-agent: *

    • Disallow: /AL/Alabama.html

    • Disallow: /AL/AR.html

    • Disallow: /Az/AZ.html

    • Disallow: /Az/bali.html

    • Disallow: /Az/bed-breakfast.html

    Правильным будет закрытие от индексации полностью всей директории:

    • User-agent: *

    • Disallow: /AL/

    • Disallow: /Az/

  12. Использование дополнительных директив в секции *

    Может иметь место неправильная реакция некоторых роботов на использование дополнительных директив. Поэтому применение их в секции «*» является нежелательным.

    Если директива не является стандартной (как, например, «Host»), то для нее лучше создать специальную секцию.

    Неверный вариант:

    • User-agent: *

    • Disallow: /css/

    • Host: www.example.com

    Правильно будет написать:

    • User-agent: *

    • Disallow: /css/

    • User-agent: Yandex

    • Disallow: /css/

    • Host: www.example.com

  13. Отсутствие инструкции Disallow

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

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

    • User-agent: Yandex

    • Host: www.example.com

    Правильно:

    • User-agent: Yandex

    • Disallow:

    • Host: www.example.com

  14. Неиспользование слешей, когда указывается директория

    Каковы будут действия робота в этом случае?

    • User-agent: Yandex

    • Disallow: john

    Согласно стандарту, индексация не будет проведена для как для файла, так и для директории с именем «john». Чтобы указать только директорию, нужно написать:

    • User-agent: Yandex

    • Disallow: /john/

  15. Неправильное написание HTTP-заголовка

    Сервер должен возвращать в HTTP-заголовке для robots.txt «Content-Type: text/plain» а, например, не «Content-Type: text/html». Если заголовок будет написан неправильно, то обработка файла некоторыми роботами будет невозможна.

Как правильно составить файл, чтобы проверка robots.txt не выявляла ошибок

Каким должен быть правильный файл robots.txt для Интернет-ресурса? Рассмотрим его структуру:

User-agent

Эта директива является основной, она определяет, для каких роботов написаны правила.

Если для любого робота, пишем:

User-agent: *

Если для конкретного бота:

User-agent: GoogleBot

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

user-agent: googlebot

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

Бот Функция
Google
Googlebot основной индексирующий робот Google
Googlebot-News Google Новости
Googlebot-Image Google Картинки
Googlebot-Video видео
Mediapartners-Google Google AdSense, Google Mobile AdSense
Mediapartners Google AdSense, Google Mobile AdSense
AdsBot-Google проверка качества целевой страницы
AdsBot-Google-Mobile-Apps Робот Google для приложений
Яндекс
YandexBot основной индексирующий робот Яндекса
YandexImages Яндекс.Картинки
YandexVideo Яндекс.Видео
YandexMedia мультимедийные данные
YandexBlogs робот поиска по блогам
YandexAddurl робот, обращающийся к странице при добавлении ее через форму «Добавить URL»
YandexFavicons робот, индексирующий пиктограммы сайтов (favicons)
YandexDirect Яндекс.Директ
YandexMetrika Яндекс.Метрика
YandexCatalog Яндекс.Каталог
YandexNews Яндекс.Новости
YandexImageResizer робот мобильных сервисов
Bing
Bingbot основной индексирующий робот Bing
Yahoo!
Slurp основной индексирующий робот Yahoo!
Mail.Ru
Mail.Ru основной индексирующий робот Mail.Ru

Disallow и Allow

Disallow позволяет запретить индексирование страниц и разделов Интернет-ресурса.

Allow служит для принудительного открытия их для индексирования.

Но пользоваться ими достаточно непросто.

Во-первых, нужно ознакомиться с дополнительными операторами и правилами их использования. К ним относятся: *, $ и #.

  • * —любое количество символов, даже их отсутствие. Ставить этот оператор в конце строки не обязательно, подразумевается, что она там стоит по умолчанию;

  • $ — показывает, что стоящий перед ним символ должен быть последним;

  • # — этот оператор служит для обозначения комментария, любая информация после него роботом в расчет не берется.

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

  • Disallow: *?s=

  • Disallow: /category/$

Не могут быть проиндексированы такие ссылки:

Эти ссылки, наоборот, открыты для индексации:

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

Не имеет значения, в каком порядке записаны директивы. Определение наследования правил (что открыть или закрыть от индексации) осуществляется по указанным директориям. Приведем пример.

Allow: *.css

Disallow: /template/

  • http://site.ru/template/ rel=»nofollow» — закрыто от индексирования

  • http://site.ru/template/style.css rel=»nofollow» — закрыто от индексирования

  • http://site.ru/style.css rel=»nofollow» — открыто для индексирования

  • http://site.ru/theme/style.css rel=»nofollow» — открыто для индексирования

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

  • Allow: *.css

  • Allow: /template/*.css

  • Disallow: /template/

Напомним еще раз: не важно, в каком порядке записаны директивы.

Sitemap

Эта директива указывает путь к XML-файлу Sitemap. URL-адрес имеет такой же вид, что и в адресной строке.

К примеру,

Sitemap: http://site.ru/sitemap.xml rel=»nofollow»

Указание директивы Sitemap возможно в любом месте файла robots.txt, при этом не требуется привязывать ее к конкретному user-agent. Разрешается указывать несколько правил Sitemap.

Host

Эта директива указывает главное зеркало ресурса (как правило, с www или без www). Помните: при указании главного зеркала пишется не http://, а https://. В случае необходимости указывается и порт.

Поддержка этой директивы возможна только ботами Яндекса и Mail.Ru. Другие роботы, в том числе и GoogleBot, эту команду не учитывают. Прописывать host можно только один раз!

Пример 1:

Host: site.ru

Пример 2:

Crawl-delay

Позволяет установить, через какой промежуток времени роботу нужно скачивать страницы ресурса. Директиву поддерживают роботы Яндекса, Mail.Ru, Bing, Yahoo. При установке интервала можно использовать как целые значения, так и дробные, используя в качестве разделителя применяется точка. Единица измерения — секунды.

Пример 1:

Crawl-delay: 3

Пример 2:

Crawl-delay: 0.5

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

Чем больше устанавливаемый интервал, тем меньше будет количество загрузок в течение одной сессии. Оптимальное значение для каждого ресурса свое. Сначала рекомендуется ставить небольшие значения (0.1, 0.2, 0.5), затем постепенно увеличивая их. Для роботов поисковиков, не особо важных для результатов продвижения (к примеру, Mail.Ru, Bing и Yahoo), можно сразу устанавливать значения, бóльшие, нежели для роботов Яндекса.

Clean-param

Эта директива нужна для сообщения краулеру (поисковому роботу) о ненужности индексации URL-адресов с указанными параметрами. Для правила указываются два аргумента: параметр и URL раздела. Яндекс поддерживает директиву.

Пример 1:

http://site.ru/articles/?author_id=267539 — не подвергнется индексации

Пример 2:

Clean-param: author_id sid http://site.ru/articles/

http://site.ru/articles/?author_id=267539&sid=0995823627 — не подвергнется индексации

Яндексом также рекомендовано использование этой директивы, чтобы не учитывались UTM-метки и идентификаторы сессий. Пример:

Clean-Param: utm_source utm_medium utm_campaign

Другие параметры

Расширенная спецификация robots.txt содержит еще такие параметры: Request-rate и Visit-time. Но в настоящее время отсутствует поддержка их ведущими поисковиками.

Директивы нужны для следующего:

  • Request-rate: 1/5 — разрешает загрузку не более 1 страницы за 5 секунд

  • Visit-time: 0600-0845 — разрешает загрузку страниц только с 6 утра до 8:45 по Гринвичу

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

  1. Запретите индексировать админку сайта;

  2. Закройте доступ роботам к личному кабинету, страницам авторизации и регистрации;

  3. Запретите индексировать корзину, формы заказа, данные по доставке и заказам;

  4. Закройте от индексирования ajax, json-скрипты;

  5. Запретите индексировать папку cgi;

  6. Запретите индексировать плагины, темы оформления, js, css для роботов всех поисковых систем, кроме Яндекса и Google;

  7. Закройте доступ роботам к функционалу поиска;

  8. Запретите индексировать служебные разделы, не являющиеся ценными для ресурса в поиске (ошибка 404, список авторов);

  9. Закройте от индексирования технические дубли страниц и страницы, контент которых в той или иной степени дублирует содержимое других страниц (календари, архивы, RSS);

  10. Запретите индексировать страницы с параметрами фильтров, сортировки, сравнения;

  11. Запретите индексировать страницы с параметрами UTM-меток и сессий;

  12. Используйте для проверки того, что проиндексировал Яндекс и Google, параметр «site:». Для этого в строку поиска введите «site:site.ru». Если в поисковой выдаче есть страницы, которые не нужно индексировать, добавьте их в robots.txt;

  13. Пропишите правила Sitemap и Host;

  14. Если необходимо, укажите Crawl-Delay и Clean-Param;

  15. Проведите проверку корректности файла robots.txt, используя инструменты Google и Яндекса;

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

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

Скачайте полезный документ по теме:

Чек-лист: Как добиваться своих целей в переговорах с клиентами

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

Дмитрий Свистунов

Статья опубликована: 03.01.2018

Облако тегов

Понравилась статья? Поделитесь:

Robots.txt — это текстовый файл, который показывает поисковым роботам, как сканировать ваш сайт. Он защищает сайт и сервер от перегрузки из-за запросов поисковых роботов.

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

Арни не одобряет

Арни не одобряет

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

Но для начала поговорим подробнее о robots.txt и его альтернативах.

Что такое файл robots.txt

Robots.txt — это файл в простом текстовом формате. Он размещается в корневом каталоге сайта (самый верхний каталог в иерархии). Если файл размещен в другом каталоге, поисковые роботы будут его игнорировать. Несмотря на всю мощь robots.txt, выглядит он как простой текстовый документ. А создать его можно за пару секунд в любом текстовом редакторе.

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

Можно использовать и HTTP-заголовок X-Robots-Tag, который задает настройки на уровне страницы.

Что делает robots.txt

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

Блокировка сканирования поисковыми роботами определенных страниц

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

Блокировка медиафайлов для отображения в результатах поиска

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

Голова раскалывается от этих ваших ограничений

Голова раскалывается от этих ваших ограничений

Блокировка файлов ресурсов с неважными внешними скриптами

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

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

Насколько опасны ошибки с Robots.txt

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

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

Шесть главных ошибок robots.txt

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

Ошибка № 1. Robots.txt находится не в корневом каталоге

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

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

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

Ошибка № 2. Неправильное использование символа-джокера или символа подстановки

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

  • Звездочка, или астериск (*). Она представляет любые варианты допустимого символа. Своего рода аналог карты джокера.
  • Значок доллара $. Обозначает конец URL, позволяет добавлять правила к последней части URL, например, файловое расширение.

При использовании символов-джокеров стоит придерживаться минимализма. Они могут потенциально наложить ограничения на большую часть сайта. Неправильное использование астерикса может привести к блокировке поискового робота. Чтобы решить проблему с неправильным символом-джокером, нужно его найти и переместить или удалить.

Ошибка № 3. Тег noindex в robots.txt

Эта ошибка часто встречается у сайтов, которым уже несколько лет. Google в сентябре 2019 года перестал выполнять команды метатега noindex в файле robots.txt.

Думали, меня так просто остановить?

Думали, меня так просто остановить?

Если ваш файл был создан до этой даты или содержит метатег noindex, скорее всего, страницы будут индексироваться Google.

Чтобы решить проблему, примените альтернативный метод. Вы можете добавить метатег robots в элемент страницы <head>, чтобы остановить индексацию.

Ошибка № 4. Блокировка скриптов и страниц стилей

Ограничение доступа к внутреннему JavaScript коду и Cascading Style Sheets (CSS) для поисковых роботов кажется логичным шагом. Однако поисковым роботам Google требуется доступ к CSS и JavaScript файлам, чтобы корректно сканировать HTML и PHP страницы.

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

Если же вам нужна блокировка определенных файлов, вставьте исключение, которое даст поисковым роботам доступ только к нужным материалам.

Ошибка № 5. Отсутствует ссылка на файл sitemap.xml

Этот пункт относится к SEO больше всего. Файл sitemap.xml дает роботам информацию о структуре сайта и его главных страницах. Поэтому есть смысл добавить его в файл robots.txt. Его поисковые роботы Google сканируют в первую очередь.

Строго говоря, это не ошибка, и в большинстве случаев отсутствие ссылки на sitemap в robots.txt не должно влиять на функциональность и внешний вид сайта. Но если вы хотите улучшить продвижение, дополните файл robots.txt

Ошибка № 6. Доступ к страницам в разработке

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

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

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

User-Agent: *

Disallow: /

Наличие косой черты в строке Disallow делает сайт невидимым для поисковых роботов. Корректируйте строку в соответствии с нужным вам эффектом.

Как восстановиться после ошибок в robots.txt

Если ошибка в файле robots.txt повлияла на отображение в поисковой выдаче, самое главное — скорректировать файл и подтвердить, что новые правила дают нужный эффект. Проверить это можно с помощью инструментов для сканирования, например, Screaming Frog.

Немного тепла — и все встанет на круги своя

Немного тепла — и все встанет на круги своя

Когда убедитесь, что robots.txt работает верно, запросите повторное сканирование поисковыми роботами. В этом поможет Google Search Console. Добавьте обновленный файл sitemap и запросите повторное сканирование страниц, которые пострадали.

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

Профилактика важнее всего

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

Если есть возможность, протестируйте изменения в песочнице, прежде чем применять их на реальном сервере.

Песочница — специально выделенная (изолированная) среда для безопасного исполнения компьютерных программ.

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

Traders

Андрей

@Traders

Фото-иллюстратор, предприниматель

Посмотрите, пожалуйста, скриншот. Нужно указывать все поисковые системы, или как там это правильно называется, в User-agent: * ? Yandex, Googlebot
Пока не обновил файл robot.txt, боюсь испортить. Нет ничего лишнего или может что забыл? Буду очень благодарен. Sitemap нужно все 5 указывать? Одна ссылка ведет на все 5

37943a03abb0454390c0e70fe51eae39.png09214c0c287f4549aaac5eb7ae87bc41.png

Исправил, так лучше? Ничего лишнего?
User-agent: *
Allow: /
Disallow: /wp-admin
Disallow: */feed
Disallow: /cgi-bin
Disallow: /xmlrpc.php?rsd
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: /category/
Disallow: /author/
Disallow: /*?*
Disallow: /tag
Disallow: /js/
Disallow: /20*/*
Sitemap: andreyalexandrov.com/sitemap_index.xml
Host: andreyalexandrov.com

User-agent: Googlebot-Image
Allow: /wp-content/uploads/

User-agent: YandexImages
Allow: /wp-content/uploads/


  • Вопрос задан

    более трёх лет назад

  • 911 просмотров

добавьте в самый конец директиву Host:: http://andreyalexandrov.com
С sitemap все нормально

и еще возможно вот это
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: /*?*
Disallow: /tag

ну и в самый конец спец-правила

User-agent: Googlebot-Image
Allow: /wp-content/uploads/

User-agent: YandexImages
Allow: /wp-content/uploads/

Имеем такой robots.txt для wordpress, индексирует отлично:

User-agent: *
Allow: /wp-content/uploads
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed
Disallow: */feed
Disallow: /*?*
Disallow: /comment-page-*
Disallow: /*/?replytocom=*
Disallow: /tag
Disallow: /category/
Disallow: /author/
Disallow: /20*/*
Disallow: /page/*

User-agent: Yandex
Allow: /wp-content/uploads
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed
Disallow: /*?*
Disallow: */feed
Disallow: /comment-page-*
Disallow: /*/?replytocom=*
Disallow: /tag
Disallow: /category/
Disallow: /author/
Disallow: /js/
Disallow: /20*/*
Disallow: /page/*
Host: www.famreal.com

User-agent: Googlebot-Image
Allow: /wp-content/uploads/

User-agent: YandexImages
Allow: /wp-content/uploads/

Sitemap: www.famreal.com/sitemap.xml

Пригласить эксперта

Disallow /wp-admin уберите слеш в конце
Sitemap кушает только один параметр, бот кушает только один Sitemap. Склейте пять документов в один или сделайте один индекс-файл по нескольким sitemap.

Нужно прописать отдельно для Яндекса (добавить директиву Host:), Гугла и для всех.


  • Показать ещё
    Загружается…

12 июн. 2023, в 19:14

25000 руб./за проект

12 июн. 2023, в 18:45

15000 руб./за проект

12 июн. 2023, в 18:41

20000 руб./за проект

Минуточку внимания

В этой статье мы рассмотрим:

  • Что такое robots.txt?
  • Все директивы файла:
    • Disallow и Allow
    • Sitemap
    • Host
    • Crawl-delay
    • Clean-param
  • Использование спецсимволов
  • Как проверить корректную работу файла
  • Часто допускаемые ошибки
  • Примеры robots.txt для различных CMS:
    • WordPress
    • Joomla
    • Bitrix

Что такое robots.txt?

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

Обход сайта поисковыми роботами начинается с поиска файла роботс. Отсутствие файла не является критической ошибкой. В таком случае роботы считают, что ограничений для них нет и они полностью могут сканировать сайт.
Файл должен быть размещён в корневом каталоге сайта и быть доступен по адресу https://mysite.com/robots.txt.

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

Указывать директивы в файле нужно только латиницей, использовать кириллицу запрещено. Русские доменные имена можно преобразовать с помощью кодировки Punycode.

Если домен указан на кириллице нужно декодировать с помощью Punycode

Что нужно закрыть от индексации в robots.txt?

  • страницы с личной информацией пользователей;
  • корзину и сравнение товаров;
  • переписку пользователей;
  • административную часть сайта;
  • скрипты.

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

Составить файл можно в любом текстовом редакторе (блокнот, TextEdit и др.). Можно создать файл robots.txt для сайта онлайн, воспользовавшись генератором файла, например, инструментом сервиса Seolib.

Сервис для создания файла robot.txt

Нужен ли robots.txt?

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

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

Файл роботс состоит из основных директив: User-agent и Disallow и дополнительных: Allow, Sitemap, Host, Crawl-delay, Clean-param. Ниже мы разберём все правила, для чего они нужны и как их правильно прописать.

User-agent — приветствие с роботом

Существует множество роботов, которые могут сканировать сайт. Наиболее популярными являются боты поисковых систем Google и Яндекса.

Роботы Google:

  • Googlebot;
  • Googlebot-Video;
  • Googlebot-News;
  • Googlebot-Image.

Роботы Яндекса:

  • YandexBot;
  • YandexDirect;
  • YandexDirectDyn;
  • YandexMedia;
  • YandexImages;
  • YaDirectFetcher;
  • YandexBlogs;
  • YandexNews;
  • YandexPagechecker;
  • YandexMetrika;
  • YandexMarket;
  • YandexCalendar.

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

Обращение ко всем роботам в файле robot.txt

Для обращения к определённому роботу, например, к Google, нужно прописать в этой строке его имя:

Обращение к роботу Google в файле robot.txt

В отличие от Google, дабы не прописывать правила для каждого робота Яндекса, в User-agent можно указать следующее:

Обращение к роботу Яндекса в файле robot.txt

В Рунете принято прописывать инструкции для двух User-agent: для всех и отдельно для Яндекса.

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

Чтобы запретить роботу доступ к сайту, каталогу или странице, используйте Disallow.

Как применять правило Disallow в различных ситуациях

Закрыть от индексации весь сайт: используйте слеш (/), чтобы заблокировать доступ ко всему сайту.

Использование слеша (/), чтобы заблокировать доступ ко всему сайту

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

Закрыть доступ к папке и её содержимому: используйте слеш после названия папки.

Закрытие доступа к определенной папке

Закрыть определённую страницу или файл: укажите URL без хоста.

Закрытие определенного URl

Открыть доступ к странице из закрытой папки: после Disallow используйте правило Allow.

Открытие страницы из закрытой папки

Запретить доступ к файлам одного типа: чтобы запретить к обходу однотипные файлы, воспользуйтесь специальными символами * и $.

Использование спец символов для запрета обхода

Адрес Sitemap в robots.txt

Если на сайте есть файл Sitemap, укажите в соответствующей директиве адрес к нему. Если же карт сайта несколько, пропишите все.

Указание пути к карте сайта

Это правило учитывается роботами независимо от его месторасположения.

Директива Host для Яндекса

UPD: 20 марта Яндекс официально объявил об отмене директивы Host. Подробнее об этом можно прочитать в блоге Яндекса для вебмастеров.Что теперь делать с директивой Host:

  • удалить из robots.txt;
  • оставить — робот будет игнорировать её.

В обоих случаях нужно настроить 301 редирект.

Роботы Яндекса поддерживают robots.txt с расширенными возможностями. Инструкция Host является одной из них. Она указывает главное зеркало сайта.

Указание главного зеркала сайта через инструкцию HOST

Важно:

  • 1. использовать www (если так начинается адрес сайта);
  • 2. использовать HTTPS (если сайт на защищённом протоколе, если нет — HTTP можно не прописывать).

Как и с Sitemap, месторасположение правила не влияет на работу робота, оно может быть указано как в начале файла, так и в конце.

Некорректно прописанная директива Host игнорируется роботом.

Crawl-delay

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

Использование директивы Crawl-delay

Строка с Crawl-delay должна находиться после всех директив с Allow и Disallow.

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

Clean-param

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

Например, есть следующие страницы:

https://mysite.com/shop/all/good1?partner_fid=3

https://mysite.com/shop/all/good1?partner_fid=4

https://mysite.com/shop/all/good1?partner_fid=1

Использование директивы Clean-param

Используя данные из Clean-param, робот не будет перезагружать дублирующуюся информацию.

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

Спецсимвол * (звёздочка) означает любую последовательность символов. То есть, используя звёздочку, вы запретите доступ ко всем URL, содержащим слово «obmanki».

Спецсимвол * запрещает доступ ко всем URL, содержащим слово

Этот спецсимвол проставляется по умолчанию в конце каждой строки.

Спецсимвол * по умолчанию проставляется в конце каждой строки

Чтобы отменить *, в конце правила нужно указать спецсимвол $ (знак доллара).

Чтобы отменить *, в конце правила нужно указать спецсимвол $ (знак доллара).

Спецсимвол / (слеш) используется в каждой директиве Allow и Disallow. С помощью слеша можно запретить доступ к папке и её содержимому /category/ или ко всем страницам, которые начинаются с /category.

С помощью слеша можно запретить доступ к папке и её содержимому

Спецсимвол # (решётка).
Используется для комментариев в файле для себя, пользователей, или других веб-мастеров. Поисковые роботы эту информацию не учитывают.
Спецсимвол # (решётка) используется для комментариев в файле для себя.

Проблемы с трафиком или позициями? Пройди бесплатную диагностику сайта и найди причину самостоятельно

Проверка работы файла

Чтобы проверить файл robots.txt на наличие ошибок, можно воспользоваться инструментами от Google и/или Яндекса.

Как проверить robots.txt в Google Search Console?

Перейдите к инструменту проверки файла. Ошибки и предупреждения будут выделены в содержании роботс.тхт, а общее количество указано под окном редактирования.

Проверка файла robot.txt на предмет ошибок

Чтобы проверить, доступна ли страница роботу, в соответствующем окне введите URL страницы и нажмите кнопку «проверить». После проверки инструмент покажет статус страницы: доступен или недоступен.

Инструкция по проверке доступности страницы роботу

Как проверить robots.txt в Яндекс.Вебмастер?

Для проверки файла нужно перейти в «Инструменты» — «Анализ robots.txt».

Проверка файла robot.txt на предмет ошибок в Яндекс.Вебмастере

Список ошибок, возникающих при анализе роботс.

Чтобы проверить, разрешён ли доступ к странице, в соответствующем окне введите URL страницы и нажмите кнопку «проверить». После проверки инструмент покажет статус страницы: знак галочки (разрешён) или будет выведена директива, запрещающая доступ.

Проверка индексации URL в Яндекс.Вебсмастер

Распространённые ошибки

    • неправильное имя файла;
      Файл должен называться robots.txt. Ошибки, допускаемые в названии файла: robot.txt, Robots.txt, ROBOTS.TXT.
    • незаполненная строка в User-agent;

Незаполненная строка в User-agent

    • перепутанные инструкции или неправильный порядок директив;

Перепутанные инструкции в файле robot.txt

или
Ошибка в написании файла robot.txt

    • пробелы, расставленные в разных местах;

Лишние пробелы в файле robot.txt

    • использование больших букв;

Ошибка использования больших букв в файле robot.txt

    • Allow для индексации;
      Ошибка использования директивы Allow для индексацииОна нужна только для переопределения директивы Disallow в том же файле robots.txt.
    • после доработок весь сайт остаётся закрытым от индексации;

Не корректно проработан файл robot.txt

    • закрыты от индексации CSS и JavaScript.
      Часто встречаются сайты, у которых в robots.txt закрыты стили. По итогу роботы видят страницу следующим образом:

В файле robot.txt закрыты от индексации CSS и JavaScript
Поисковые системы не рекомендуют закрывать эти файлы от роботов.

Рекомендации Яндекса:

Необходимые рекомендации Яндекса

Рекомендации Google:

Необходимые рекомендации Google

Robots.txt для различных CMS

Ниже мы предлагаем рассмотреть часто используемые директивы для различных CMS. Это не конечный вариант файла robots.txt. Этот набор правил редактируется под каждый сайт отдельно и зависит от того, что нужно закрыть, а что — оставить открытым.

Robots.txt для WordPress

Пример файла под Вордпресс:

User-Agent: *
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /template.html
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content
Allow: /wp-content/uploads/
Disallow: /tag
Disallow: /category
Disallow: /archive
Disallow: */trackback/
Disallow: */feed/
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=
Allow: /wp-content/*.css*
Allow: /wp-content/*.jpg
Allow: /wp-content/*.gif
Allow: /wp-content/*.png
Allow: /wp-content/*.js*
Allow: /wp-includes/js/
Host: mysite.com
Sitemap: http://mysite.com/sitemap.xml

Robots.txt для Joomla

Пример роботс для Джумла:

User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /components/
Disallow: /images/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Allow: /templates/*.css
Allow: /templates/*.js
Allow: /media/*.png
Allow: /media/*.js
Allow: /modules/*.css
Allow: /modules/*.js
Host: mysite.com
Sitemap: http://mysite.com/sitemap.xml

Robots.txt для Bitrix

Пример файла для Битрикса:

User-agent: *
Disallow: /*index.php$
Disallow: /bitrix/
Disallow: /auth/
Disallow: /personal/
Disallow: /upload/
Disallow: /search/
Disallow: /*/search/
Disallow: /*/slide_show/
Disallow: /*/gallery/*order=*
Disallow: /*?*
Disallow: /*&print=
Disallow: /*register=
Disallow: /*forgot_password=
Disallow: /*change_password=
Disallow: /*login=
Disallow: /*logout=
Disallow: /*auth=
Disallow: /*action=*
Disallow: /*bitrix_*=
Disallow: /*backurl=*
Disallow: /*BACKURL=*
Disallow: /*back_url=*
Disallow: /*BACK_URL=*
Disallow: /*back_url_admin=*
Disallow: /*print_course=Y
Disallow: /*COURSE_ID=
Allow: /bitrix/*.css
Allow: /bitrix/*.js
Host: mysite.com
Sitemap: http://mysite.com/sitemap.xml

Заключение

Файл Robots.txt — полезный инструмент в формировании взаимоотношений между поисковыми роботами и вашим сайтом. При правильном использовании он может оказать положительное влияние на ранжирование и сделать сайт более удобным для сканирования. Используйте это руководство, чтобы понять, как работает robots.txt, как он устроен и как его использовать.

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

Интернет-магазин косметики

Неожиданная находка в файле robot.txt

Площадка для обмена знаниями, учебниками и ГДЗ

Неожиданная находка в файле robot.txt

Приглашение на работу от известного SEO-сервиса

В файле robot.txt приглашение на работу

Ещё одно приглашение, но уже в файле humans.txt

В файле robot.txt приглашение на работу

После 2166 запрещающих, направляющих и разрешающих директив, в конце файла можно обнаружить рисуночек

Прикол в файле robot.txt

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

Отправить заявку

Еще по теме:

  • Что такое атрибут rel=“canonical”, когда и как его использовать?
  • В этой статье мы разберём, как и для чего нужно использовать атрибут rel=“canonical”, а также на конкретных примерах опишем, когда его лучше применять. Что такое…

  • Обновление PageSpeed Insights: что изменилось, на какие метрики обращать внимание?
  • 1. Обновленный PageSpeed Insights Оценка скорости загрузки Данные наблюдений Имитация загрузки страницы Оптимизация Диагностика и успешные аудиты 2. Итоги Ни для кого не секрет, что…

  • Технические ошибки, которые допускают оптимизаторы
  • Небольшие заметки, рассмотренные в статье, помогут вам улучшить свой сайт. Мы показываем примеры технических ошибок владельцев ресурсов/оптимизаторов и варианты их исправления, рассказываем, как лучше использовать…

  • Что влияет на частоту индексации и как заставить поискового робота посещать ваш сайт чаще
  • От чего зависит скорость индексации сайта, как на нее можно повлиять и как сообщить роботу Яндекса и Google об изменениях на сайте. Читайте о том,…

  • Что необходимо закрывать от индексации на сайте
  • Что такое индексация сайта Что следует закрывать на сайте Размещённый контент Страницы Весь сайт Какие данные закрывать не стоит Как закрывать от индексации контент, страницу…


SEO-TeamLead

За два года от стажера до тимлида.

Google меня любит.

Множко катаю на сапборде.

Девиз: Либо делай качественно, либо делай качественно.

Есть вопросы?

Задайте их прямо сейчас, и мы ответим в течение 8 рабочих часов.

Понравилась статья? Поделить с друзьями:
  • Как найти ошибку в php сайте
  • Как найти ошибку в pascal
  • Как найти ошибку в javascript
  • Как найти ошибку в html коде онлайн
  • Как найти ошибку в dns