Не найден файл robots txt

Обновлено: 06.07.2024

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примеры комментариев в robots.txt:

В заключении

Что значит вот эта строчка - Allow: /wp-admin/admin-ajax.php ?

Движок Wordpress. Мог ли какой-то плагин сам сгенерировать robots? Я уже ничего не понимаю.

Плагин стоит Rustolat и Yoast Seo.

Буду очень благодарна за ответы!

МарШа, Должен быть в корневой папке вашего домена, иногда в отдельных папках. Проведите поиск по всем папкам.

Разрешить к индексированию файл admin-ajax.php

Я понимаю, что то разрешить. Что разрешаем-то?

Скрипт admin-ajax.php выполняет продление пользовательской сессии WordPress — для удобства использования административной панели. Если администратор или редактор часто работает с сайтом, то это избавляет от необходимости каждый раз вводить логин/пароль. Но для 99% посетителей сайта этот функционал, скорее всего, не нужен: они ведь только читает контент, не редактируют его.

Это по аналогии, что некоторые закрывают /wp-content/, но открывают themes, для лучшей видимости сайта роботом.

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

МарШа:
Здравствуйте!

Буду очень благодарна за ответы!

Сделайте свой, скиньте в корень и проверьте, что получится.

Сделала свой, закинула в корневую директорию. Теперь показывает в строке поиска мой robots, а не тот. Куда теперь делся первый, не понимаю. Самоустранился. Я его так нигде и не нашла. Чудеса какие-то.

Hammer8:
Скрипт admin-ajax.php выполняет продление пользовательской сессии WordPress — для удобства использования административной панели. Если администратор или редактор часто работает с сайтом, то это избавляет от необходимости каждый раз вводить логин/пароль. Но для 99% посетителей сайта этот функционал, скорее всего, не нужен: они ведь только читает контент, не редактируют его.
Это по аналогии, что некоторые закрывают /wp-content/, но открывают themes, для лучшей видимости сайта роботом.

Давненько я такого бреда не читал. Ничего из этого ботам индексировать давать не надо. "Для лучшей видимости сайта" - для чего-чего? Для лучшей видимости ему нужно админку открыть или тему?

Miha Kuzmin (KMY):
Давненько я такого бреда не читал. Ничего из этого ботам индексировать давать не надо. "Для лучшей видимости сайта" - для чего-чего? Для лучшей видимости ему нужно админку открыть или тему?

Но может быть, Вы мне сможете ответить на мой вопрос? Почему я не вижу robots в корневой папке? В строке поиска он есть, а там, где должен лежать, его нет! Но когда я делаю другой robots, в строке поиска отображается тот, который сделала я. Тогда куда тот "улетает"? А когда свой удаляю, тот снова появляется в строке поиска, но в папке фтп по-прежнему его нет!

МарШа:
Но может быть, Вы мне сможете ответить на мой вопрос? Почему я не вижу robots в корневой папке? В строке поиска он есть, а там, где должен лежать, его нет! Но когда я делаю другой robots, в строке поиска отображается тот, который сделала я. Тогда куда тот "улетает"? А когда свой удаляю, тот снова появляется в строке поиска, но в папке фтп по-прежнему его нет!

Если у вас вордпресс, то или вы тупо смотрите не в ту папку, либо кто-то хорошо поковырялся в .htaccess (смысла, правда, не вижу). Скорее всего у вас ничего такого нет, и решается это даванием фтп какому-нибудь другу с лоховскими знаниями, он покажет.

МарШа:
Почему я не вижу robots в корневой папке? В строке поиска он есть, а там, где должен лежать, его нет!

Потому что у вас стоит вордпрессный SEO-plugin (видимо Yoast).

Если файла не сущсетвует, он вместо него отдает свой дефолтный (в котором как раз закрыта админка, и почему-то открыт admin-ajax).

А как только вы заливаете реальный файл в корень, ВП это чекает и начинает отдавать уже его.

Miha Kuzmin (KMY):
Для лучшей видимости ему нужно админку открыть или тему?

Для гугла сейчас очень актуален вопрос заблокированных ресурсов. Который решается открытием папки themes в WP. В других движках можно просто открыть виды файлов js и css.

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

Почему robots.txt важен для SEO-продвижения?

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

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

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

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

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

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

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

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

User-agent

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

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

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

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

Disallow и Allow

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

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

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

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

Crawl-delay

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

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

Clean-param

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

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

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

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

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

Sitemap

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

С марта 2018 года Яндекс отказался от директивы Host. Вместо неё используется раздел «Переезд сайта» в Вебмастере и 301 редирект.

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

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

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

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

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

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

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

Правило должно соответствовать виду "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 и обновляет информацию о нем в своей базе. Если при очередном обращении робот не может загрузить файл, в\nВебмастере появляется соответствующее предупреждение.

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

Обнаружены ошибки в файле robots.txt

Нет используемых роботом файлов Sitemap

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

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

Обнаружены ошибки в файлах Sitemap

Проверьте файл Sitemap вашего сайта. Проверка может выявить ошибку «Неизвестный тег» . Она сообщает, что файл содержит неподдерживаемые Яндексом элементы. Такие элементы игнорируются роботом при обработке Sitemap , но данные из поддерживаемых элементов учитываются. Поэтому менять содержимое файла необязательно. Подробнее о поддерживаемых элементах Sitemap.

Отсутствуют элемент title и метатег description

Элемент title и метатег description помогают сформировать корректное описание сайта в результатах поиска. Подробно см. раздел Отображение заголовка и описания сайта в результатах поиска.

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

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

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

Файл favicon недоступен для робота

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

Зачем нужен robots.txt

Поисковые роботы — это программы, которые сканируют содержимое сайтов и заносят их в базы поисковиков Яндекс, Google и других систем. Этот процесс называется индексацией.

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

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

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

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

Основные директивы robots.txt

Структура файла robots.txt выглядит так:

  1. Директива User-agent. Обозначает, для каких поисковых роботов предназначены правила в документе. Здесь можно указать все поисковые системы (для этого используется символ «*») или конкретных роботов (Yandex, Googlebot и другие).
  2. Директива Disallow (запрет индексации). Указывает, какие разделы не должны сканировать роботы. Даже если на сайте нет служебного контента, который необходимо закрыть от индексации, директиву нужно прописывать (не указывая значение). Если не сделать этого, robots.txt может некорректно читаться поисковыми роботами.
  3. Директива Allow (разрешение). Указывает, какие разделы или файлы должны просканировать поисковые роботы. Здесь не нужно указывать все разделы сайта: все, что не запрещено к обходу, индексируется автоматически. Поэтому следует задавать только исключения из правила Disallow.
  4. Sitemap (карта сайта). Полная ссылка на файл в формате .xml. Sitemap содержит список всех страниц, доступных для индексации, а также время и частоту их обновления.

Советы по созданию robots.txt

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

Группируйте директивы

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

Учитывайте регистр в названии файла

Для некоторых поисковых систем не имеет значение, какими буквами (прописными или строчными) будет обозначено название файла robots.txt. Но для Google, например, это важно. Поэтому желательно писать название файла маленькими буквами, а не Robots.txt или ROBOTS.TXT.

Не указывайте несколько каталогов в одной директиве

Для каждого раздела/файла нужно указывать отдельную директиву Disallow. Это значит, что нельзя писать Disallow: /cgi-bin/ /authors/ /css/ (указаны три папки в одной строке). Для каждой нужно прописывать свою директиву Disallow:

Убирайте лишние директивы

Часть директив robots.txt считается устаревшими и необязательными: Host (зеркало сайта), Crawl-Delay (пауза между обращением поисковых роботов), Clean-param (ограничение дублирующегося контента). Вы можете удалить эти директивы, чтобы не «засорять» файл.

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

Чтобы убедиться в том, что файл составлен грамотно, можно использовать веб-инструменты Яндекс, Google или онлайн-сервисы (PR-CY, Website Planet и т. п.). В Яндекс и Google есть собственные правила для проверки robots.txt. Поэтому файл необходимо проверять дважды: и в Яндекс, и в Google.

Если вы впервые пользуетесь сервисом Яндекс.Вебмастер, сначала добавьте свой сайт и подтвердите права на него. После этого вы получите доступ к инструментам для анализа SEO-показателей сайта и продвижения в ПС Яндекс.

Чтобы проверить robots.txt с помощью валидатора Яндекс:

Выберите в левом меню раздел Инструменты → Анализ robots.txt.

Содержимое нужного файла подставиться автоматически. Если по какой-то причине этого не произошло, скопируйте код, вставьте его в поле и нажмите Проверить:

проверка robotstxt 1

проверка robotstxt 2

Чтобы сделать проверку с помощью Google:

проверка robotstxt 3

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

проверка robotstxt 4

Проверка robots.txt Google не выявила ошибок

Читайте также: