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

Обновлено: 01.07.2024

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

Вот мой robots.txt:

Как видите, сайт полностью открыт для сканирования. Ну и чего ему не нравится?!

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

Darksnow, команды allow в принципе не существует, разрешающая директива как бы по умолчанию на всё к чему есть доступ.

desertFox, может глюк, а может лишние непечатные символы распознал. уберите "Disallow:" вообще и посмотрите что скажет валидатор robots.txt

Цитата
desertFox, может глюк, а может лишние непечатные символы распознал. уберите "Disallow:" вообще и посмотрите что скажет валидатор robots.txt

когда проверяю урлы на доступность в разделе "Инструмент проверки файла robots.txt" пишет "ДОСТУПЕН", а в разделе "Файлы Sitemap" пишет что все урлы закрыты в robots.txt

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

какие ещё плагины?!)) у меня самопис, сам его сделал, есть ещё три аналогичных самописа - никаких проблем с картой сайта не возникало

Цитата
Sasha Minsky пишет:
Пройдет за пару дней, это просто левый текст про роботс выводится не в тему, у меня точно так же было с новым сайтом. Беспокоиться не о чем.

вот и я думаю что глюк какой-то, но всё равно беспокоюсь, на гугле на форуме задал этот же вопрос, у меня только попросили дать ссылку на сайт и пока тишина, пока никто объяснил почему эти предупреждения появились, а роботс настроен нормально ибо подобный уже используется на трёх сайтах более 2-х лет и никаких проблем

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

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 — это инструмент, ограничивающий для сканеров поисковых систем доступ к определенным страницам сайта. В этой статье мы поделимся рекомендациями, касающиеся файла robots.txt.

Что такое файл Robots.txt?

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

Вот так выглядит файл robots.txt.

Что такое файл Robots.txt?

Когда боты и другие сканеры попадают на сайт, они могут использовать большой объем серверных мощностей. Это может замедлить ваш сайт. Robots.txt решает эту проблему.

Ниже приведен пример файла Robots.txt от Google , в котором для Googlebot заблокирован доступ к определенным каталогам, разрешен доступ к /directory2/subdirectory1/. Но для других сканеров заблокирован весь сайт.

Что такое файл Robots.txt? - 2

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

Почему файлы Robots.txt важны?

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

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

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

Почему файлы Robots.txt важны?

Чтобы предотвратить отображение URL-адреса в результатах поиска Google, необходимо защитить файлы на сервере паролем, использовать метатег noindex или заголовок ответа.

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

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

Рекомендованные практики Google для файлов Robots.txt

1. Блокировать определенные веб-страницы

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

2. Медиа-файлы

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

3. Файлы ресурсов

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

Как работать с атрибутами Noindex

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

1. Метатег Robots: <meta name=«robots» content=«noindex» />

Приведенный выше пример тега указывает поисковым системам не показывать веб-страницу в результатах поиска. Значение атрибута name= «robots» указывает, что директива применяется ко всем сканерам. Чтобы обратиться к определенному сканеру, замените значение robots атрибута name на имя сканера.

Совет: данный метатег должен указываться в разделе <head>. Если нужно заблокировать определенные страницы сайта от сканирования или индексации, используйте директиву no index .

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

14 распространенных проблем с Robots.txt

1. Отсутствует файл Robots.txt

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

2. Добавление строк Disallow для блокировки конфиденциальной информации

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

В чем проблема: Используйте проверку подлинности на стороне сервера, чтобы заблокировать доступ к личному контенту.

3. Добавление Disallow для предотвращения дублирования контента

Сайты должны быть просканированы, чтобы определить их канонический индекс. Не блокируйте содержимое с помощью robots.txt вместо canonical.

В чем проблема: В некоторых CMS достаточно сложно добавлять пользовательские теги canonical. В этом случае можно попробовать другие методы.

4. Добавление Disallow для кода, размещенного на стороннем сайте

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

В чем проблема: Это может привести к ошибке, когда сложно определить исходный сервер для конкретного контента.

5. Использование абсолютных URL-адресов

Директивы в файле robots.txt (за исключением «Sitemap:») действительны только для относительных путей.

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

6. Robots.txt размещен не в корневой папке сайта

Файл Robots.txt должен быть размещен в самом верхнем каталоге сайта.

В чем проблема: Не помещайте файл robots.txt в какую-либо другую папку.

7. Обслуживание разных файлов Robots.txt

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

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

8. Добавлена ​​директива для блокировки всего содержимого сайта

Часто владельцы сайтов оставляют файл robots.txt, который может содержать строку disallow, блокирующую все содержимое сайта.

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

9. Добавление ALLOW вместо DISALLOW

На сайтах не обязательно указывать директиву allow. Директива allow позволяет переопределять директивы disallow в том же файле robots.txt.

В чем проблема: В случаях, когда директивы disallow похожи, использование allow может помочь в добавлении нескольких атрибутов, чтобы их различать.

10. Неверное расширение типа файла

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

В чем проблема: Файл должен иметь расширение .txt и создаваться в кодировке UTF-8.

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

Запрет на сканирование веб-страниц может привести к их удалению из индекса Google.

В чем проблема: При добавлении перед именем папки звездочки (*) это может означать что-то промежуточное. Когда она добавлена после, это указывает на необходимость заблокировать все, что включено в URL-адрес после /.

12. Блокировка доступа ко всему сайту во время разработки

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

13. Написание директив заглавными или прописными буквами

Директивы в файле robots.txt являются чувствительными к регистру.

В чем проблема: Некоторые CMS автоматически устанавливают URL-адреса для отображения содержимого файла robots.txt в верхнем и нижнем регистре. Директивы должны соответствовать фактической структуре URL-адресов со статусом 200.

14. Использование кодов состояния сервера (например, 403) для блокировки доступа

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

Как проверить, используется ли сайте X-Robots-Tag?

Чтоб проверить заголовки сервера, используйте инструмент просмотреть как робот Google в Search Console.

Заключение

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

Пожалуйста, оставляйте свои отзывы по текущей теме материала. За комментарии, лайки, отклики, дизлайки, подписки низкий вам поклон!


Даже у опытных пользователей WordPress иногда возникают вопросы по грамотной настройке файла robots.txt Для вас сегодня ультимативное руководство от компании Yoast которая наверняка известна многим по самому популярному SEO плагину — Yoast SEO for WordPress . Ну кому же еще как не им рассказать нам об этом пресловутом файлике. Перед вами полный перевод авторской статьи. Вникайте, друзья!

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

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

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

Что делает файл robots.txt?

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

Куда мне положить мой файл robots.txt?

Плюсы и минусы использования robots.txt

Плюс: бюджет сканирования

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

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

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

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

Минусы: не распространяется ценность ссылки

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

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

Файл robots.txt состоит из одного или более блоков директив, каждый из которых начинается строчкой, в начале которой стоит user-agent. “User-agent” – это название определенного поискового робота, которому адресована директива. Вы также можете создать только один блок для всех поисковиков, используя шаблон для user-agent, или же специфические блоки для определенных поисковых систем. Бот поисковой системы всегда подцепит этот специфический блок, который ему адресован. Блоки выглядят вот так:

Директивы, типа Allow и Disallow не особо чувствительны к изменению регистра, так что не важно, как писать – капсом или строчными буквами. Но значения – чувствительны, так что /photo/ — это не то же самое, что /Photo/. Нам нравится писать директивы с большой буквы, чтоб они лучше читались.

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

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

Сравнительно простая строка User-agent: Googlebot сделает за вас всю работу, если вы хотите, рассказать данному «пауку», что тот должен делать.

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

Поисковые системы всегда выбирают самый подходящий блок директив, из всех предложенных. Допустим, у вас есть три блока директив: один для *, другой для Googlebot и третий для Googlebot-News. Если у бота указан user-agent Googlebot-Video, то он выберет ограничения Googlebot. Бот с user-agent Googlebot-News будет использовать директивы Googlebot-News

Вот вам список самых распространенных user agent для ботов поисковых систем:

Search engine Field User-agent
Baidu General baiduspider
Baidu Images baiduspider-image
Baidu Mobile baiduspider-mobile
Baidu News baiduspider-news
Baidu Video baiduspider-video
Bing General bingbot
Bing General msnbot
Bing Images & Video msnbot-media
Bing Ads adidxbot
Google General Googlebot
Google Images Googlebot-Image
Google Mobile Googlebot-Mobile
Google News Googlebot-News
Google Video Googlebot-Video
Google AdSense Mediapartners-Google
Google AdWords AdsBot-Google
Yahoo! General slurp
Yandex General yandex

Директива Disallow

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

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

Пример выше, в котором убран всего лишь один символ, позволит поисковикам сканировать весь сайт

Пример выше запретит Google сканировать папку с картинками и все, что в ней есть. Это значит, что все подкатегории также будут заблокированы. Нужно писать именно /Photo, а не просто photo, так как здесь регистр имеет значение.

Как использовать шаблоны/регулярные выражения

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

В примере выше * позволяет захватить все то, что соответствует имени файла. Заметим, что остаток строки все еще чувствителен к выбранному регистру, так что строка выше не будет блокировать файл, который называется /copyrighted-images/example.JPG

Некоторые поисковики, например, Google, позволяют еще больше усложнить регулярные выражения, но все ж не все поисковые системы улавливают данную логику. Самая полезная функция – это добавление $, что означает окончание URL. Данный пример иллюстрирует применение этой функции:

Это значит, что /index.php не будет индексироваться, а /index.php?p=1 как раз будет индексироваться. Естественно, это может пригодиться только в определенных обстоятельствах, и несет в себе определенную опасность: просто разблокировать то, что вы, в общем, не хотите что было разблокировано.

Не стандартизированные директивы сканирования robots.txt

Кроме директив Disallow и User-agent есть еще парочка директив, которые вы можете использовать. Эти директивы не поддерживаются ботами всех поисковиков, так что имейте это в виду.

Директива Allow

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

Единственный способ добиться того же самого без использования директивы allow – это отключить от индексации каждый файл в папке wp-admin по отдельности.

Директива noindex

Это одна из тех менее известных директив, которую поддерживает Google. Мы думаем, что это довольно опасная штука. Если вы хотите извлечь какую-либо страницу из результатов поиска, то у вас, должно быть, есть на это веские причины. Данные метод позволяет исключить какую-либо страницу только из поля зрения поисковика Google, в то время как она все еще открыта другим поисковым машинам. Заметим, что Google поддерживает noindex неофициально, так что если это работает сейчас, то не факт что будет работать потом.

Директива host

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

Так как данная директива поддерживается Yahoo!, Bing и Yandex, она может быть очень полезна для того, чтоб придержать эту троицу, часто слишком голодную до сканирования всего подряд на вашем сайте.

Столкнувшись с данной строкой Yahoo! и Bing будут ждать 10 секунд после проведенного сканирования. Yandex будет получать доступ к вашему сайту один раз в 10 секунд. Вот пример, такой строки с директивой crawl-delay:

Стоит заметить, что если вы установите 10-ти секундную задержку сканирования, то вы позволите поисковым системам индексировать 8,640 страниц в день. Казалось бы это очень много для небольшого сайта, но в тоже время это мелочь для крупного ресурса.

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