Для чего нужен файл robots.txt? Как его настроить и проверить

Автор статьи
Анна Чудная
Окт 29, 2020
18 мин - время чтения

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

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

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

Для чего используют robots.txt?

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

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

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

1. Страницы с персональными данными.

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

2. Вспомогательные страницы, которые появляются только при определенных действиях пользователя.

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

3. Админпанель и системные файлы.

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

4. Страницы поиска и сортировки.

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

5. Страницы фильтров. 

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

6. Файлы определенного формата.

К ним могут относиться фото, видео, PDF-документы, JS-скрипты. С помощью robots.txt можно ограничивать сканирование файлов как по отдельности, так и по определенному расширению. 

Как создать и где разместить robots.txt?

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

Поскольку документ имеет расширение .txt, для его создания подойдет любой текстовый редактор с поддержкой кодировки UTF-8. Самый простой вариант — Блокнот (Windows) или TextEdit (Mac). 

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

Генератор robots.txt

Название и размер документа

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

Где разместить файл

Документ находится в корневом каталоге на хостинге и доступ к нему возможен через FTP. Перед внесением изменений рекомендуется сначала скачать robots.txt в исходном виде.

Синтаксис и директивы robots.txt 

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

Общие требования к содержимому файла

1. Каждая директива должна начинаться с новой строки и формироваться по принципу: одна строка = одна директива + один параметр.

Ошибка User-agent: * Disallow: /folder-1/ Disallow: /folder-2/
Правильно User-agent: *

Disallow: /folder-1/

Disallow: /folder-2/

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

Ошибка User-agent: Disallow: /папка-с-контактами/
Правильно Disallow: /xn—–6kcaca0dkdbximhb9avc/

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

Ошибка User-agent: Disallow: /folder/
Правильно Disallow: /Folder/

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

Ошибка User-agent: Disallow: /folder-1/;

Disallow: /“folder-2”/

Правильно Disallow: /folder-1/

Disallow: /folder-2/

5. Если robots.txt пустой или недоступен, он может быть воспринят как разрешение на сканирование всего сайта. Для успешной обработки файла роботом ожидаемый ответ сервера — 200 ОК.

Ответ сервера на robots.txt

Символы файла robots.txt

Рассмотрим основные символы файла и их значения.

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

Disallow: /search/

Disallow: /standards.pdf

Звездочка (*) — маска, которая определяет условие, действующее «для всех». 

User-Agent: * — правила будут действовать для всех роботов.

Disallow: /*videos/ — запрещает обход всех ссылок сайта, содержащих /videos/.

Знак доллара ($) — ограничение знака звездочки * в отношении URL-адресов ресурса. Например, содержимое сайта или отдельного файла закрыто, но ссылки, содержащие указанное название, остаются доступными.

Disallow: /*folder-1/$

Решетка или хэш (#) — любой текст после этого символа считается комментарием и не учитывается роботом.

#эту информацию робот не увидит. 

Директивы файла robots.txt 

Отличия директив для разных поисковых систем 

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

ДИРЕКТИВЫ GOOGLE BING YAHOO!
User-agent + + +
Disallow + + +
Allow + + +
Sitemap + + +
Crawl-delay + +

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

Директивы для Google

  • User-agent 

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

Пример

User-agent: * — инструкции предназначены для всех существующих роботов.

User-agent: Googlebot — обращение к роботу Google.

  • Disallow 

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

Пример 1. Указание разных параметров после Disallow.

disallow: /ссылка на страницу — закрытие доступа к конкретному URL-адресу.

disallow: /имя папки/ — закрытие доступа к папке. 

disallow: /картинка/ — закрытие доступа к изображению.

disallow: / — отсутствие каких-либо указаний после «/» говорит о том, что сайт полностью закрыт от сканирования. Это может пригодиться на этапе разработки. 

Пример 2. Запрет сканирования всех pdf-файлов сайта.

User-agent: Googlebot

Disallow: /*.pdf

  • Allow 

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

Пример. Использование Allow для сканирования одного изображения в закрытом альбоме.

Указываем директорию Allow, URL изображения и в другой строке Disallow c названием папки, где лежит файл.

Allow: /album/picture1.jpg

Disallow: /album/

  • Sitemap

Команда sitemap в robots.txt указывает на путь к карте сайта. Если карта имеет стандартное название, лежит в корневом каталоге и доступна, как и robots.txt, по ссылке «имя сайта»/sitemap.xml, директиву можно не добавлять. 

Пример

Sitemap: https://website.com/sitemap2020.xml

Когда используют метатег robots 

Если контент сайта нужно скрыть из результатов поиска, файла robots.txt будет недостаточно. Запрет индексирования страниц роботом реализуют с помощью метатега robots, который добавляют в заголовок <head> html-кода страницы. Директива noindex сообщает, что текст страницы индексировать нельзя. Еще один способ ограничить попадание страницы в индекс — указать ее URL в теге X-Robots-Tag файла конфигурации ресурса.

Пример для закрытия на уровне страницы

<head>
 <meta name=“robots” content=“noindex”>
</head>

Какими бывают поисковые роботы?

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

Виды роботов Google 

  • Googlebot: бот для сканирования сайтов для ПК и мобильный устройств
  • Googlebot Image: отвечает за показ изображений сайта в разделе «Картинки»
  • Googlebot Video: отвечает за сканирование и отображение видео
  • Googlebot News: отбирает самые полезные и качественные статьи для раздела «Новости»
  • AdSense: оценивает сайт как рекламную платформу с точки зрения релевантности объявлениям

Полный список роботов Google (агентов пользователей) перечислен в официальной Справке.

Для других поисковых систем систем актуальны такие роботы: Bingbot в Bing, Slurp в Yahoo, Baiduspider в Baidu — но на этом список не заканчивается. На сайте по ссылке перечислено 302 бота.

Кроме поисковых роботов сайт могут сканировать краулеры аналитических ресурсов, например, Ahrefs или Screaming Frog. Их программное обеспечение работает по тому же принципу, что и поисковик — парсинг URL для занесения в собственную базу.

Боты, от которых сайт следует закрыть:

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

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

SetEnvIfNoCase User-Agent "имя бота-1" search_bot
SetEnvIfNoCase User-Agent "имя бота-2" search_bot

Команду нужно указывать внизу файла .htaccess. Запрет сканирования для каждого робота должен быть указан в отдельной строке.

Если же все-таки решите использовать robots.txt, укажите в нем всех названия всех в таком формате:

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

Disallow: /

Таким образом вы ограничите доступ роботов ко всем страницам сайта.

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

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

Пример содержимого robots.txt

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

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

Disallow: /[путь к файлу или папке]/

Disallow: /[путь к файлу или папке]/

Disallow: /[путь к файлу или папке]/

Sitemap: [URL карты сайта] 

Теперь посмотрим примеры содержимого файлов robots.txt на разных сайтах.

Ниже приведен минималистичный вариант:

Пример файла robots.txt

В следующем примере мы видим список директорий сайта, страниц с utm-метками и GET-параметрами, которые закрыты для сканирования. Для некоторых ботов созданы отдельные группы, в целом запрещающие обход сайта (AhrefsBot, SemrushBot и др.):

Пример файла robots.txt

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

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

Опция проверки файла robots.txt отсутствует в новом интерфейсе Google Search Console. Теперь можно проверять индексацию страниц по отдельности (Проверка URL) или же отправлять запросы на удаление URL (Индекс — Удаления). Перейти к «Инструменту поверки файлов robots.txt» можно напрямую.

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

Как еще можно использовать robots.txt?

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

Так выглядит robots.txt интернет-магазина компании Nike:

Креативный пример файла robots.txt

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

На сайте TripAdvisor:

Креативный пример файла robots.txt

На сайте маркетплейса Esty:

Креативный пример файла robots.txt

Выводы

  • Файл robots.txt — это рекомендация роботам, какие страницы сканировать, а какие нет. 
  • С помощью robots.txt запрет индексации настроить нельзя, но можно увеличить шансы сканирования или игнорирования роботом определенных документов или файлов.
  • Скрытие малополезного содержимого сайта с помощью директивы disallow позволяет экономить краулинговый бюджет. Это актуально и для многостраничных, и для небольших сайтов.
  • Для создания файла robots.txt достаточно простого текстового редактора, а для проверки — Google Search Console. 
  • Название файла robots.txt должно состоять из маленьких букв и не превышать в размере 500 Кб.

Шпаргалка: Список роботов для вашего файла robots.txt

User-agent: Baiduspider
Disallow: /
User-agent: sogou spider
Disallow: /
User-agent: YodaoBot
Disallow: /
User-Agent: SputnikBot
Disallow: /
User-agent: moget
Disallow: /
User-agent: ichiro
Disallow: /
User-agent: NaverBot
Disallow: /
User-agent: Yeti
Disallow: /
User-agent: oBot
Disallow: /
User-agent: AddThis
Disallow: /
User-agent: wotbox
Disallow: /
User-agent: Embedly
Disallow: /
User-agent: 200PleaseBot
Disallow: /
User-agent: PaperLiBot
Disallow: /
User-agent: Genieo
Disallow: /
User-agent: ShowyouBot
Disallow: /
User-agent: TweetmemeBot
Disallow: /
User-agent: SemrushBot
Disallow: /
User-agent: SemrushBot-SA
Disallow: /
User-agent: AhrefsBot
Disallow: /
User-agent: Exabot
Disallow: /
User-agent: SurveyBot
Disallow: /
User-agent: sistrix
Disallow: /User-agent:
MJ12bot
Disallow: /User-agent:
BDCbot
Disallow: /
User-agent: BDCbot/1.0
Disallow: /
User-agent: rogerbot
Disallow: /
User-agent: spbot
Disallow: /
User-agent: linkdexbot
Disallow: /
User-agent: 360Spider
Disallow: /
User-agent: 360Spider-Image
Disallow: /
User-agent: 360Spider-Video
Disallow: /
User-agent: CCBot
Disallow: /
User-agent: HaoSouSpider
Disallow: /
User-agent: dotbot
Disallow: /
User-agent: grapeshot
Disallow: /
User-agent: proximic
Disallow: /
User-agent: LinkpadBot
Disallow: /
User-agent: Sunrise
Disallow: /
User-agent: Butterfly
Disallow: /
User-agent: Linguee Bot
Disallow: /
User-agent: TwengaBot-2.0
Disallow: /
User-agent: TurnitinBot
Disallow: /
User-agent: BLEXBot
Disallow: /
User-agent: 008
Disallow: /
User-agent: AMZNKAssocBot/4.0
Disallow: /
User-agent: NerdyBot
Disallow: /
User-agent: trovitBot
Disallow: /
User-agent: ShopWiki
Disallow: /
User-agent: 007ac9
Disallow: /
User-agent: SiteExplorer
Disallow: /
User-agent: XoviBot
Disallow: /
User-agent: SMTBot
Disallow: /
User-agent: meanpathbot
Disallow: /
User-agent: MixrankBot
Disallow: /
User-agent: EasouSpider
Disallow: /
User-agent: Riddler
Disallow: /
User-agent: SeznamBot
Disallow: /
User-agent: Swiftbot
Disallow: /
User-agent: Qwantify
Disallow: /
User-agent: psbot
Disallow: /
User-agent: CrazyWebCrawler-Spider
Disallow: /
User-agent: HyperCrawl
Disallow: /
User-agent: daumoa
Disallow: /
User-agent: coccoc
Disallow: /
User-agent: netseer
Disallow: /
User-agent: BacklinkCrawler
Disallow: /
User-agent: Alexabot
Disallow: /
User-agent: SurdotlyBot
Disallow: /
User-agent: MegaIndex.ru/2.0
Disallow: /
User-agent: MegaIndex.ru
Disallow: /
User-agent: yacybot
Disallow: /
User-agent: QuerySeekerSpider
Disallow: /
User-agent: WBSearchBot
Disallow: /
User-agent: DeuSu
Disallow: /
User-agent: TDJBOT
Disallow: /
User-agent: Findxbot/1.0
Disallow: /
User-agent: Findxbot
Disallow: /
User-agent: Y! J-ASR
Disallow: /
User-agent: InfoWeb
Disallow: /
User-agent: Nutch Bots
Disallow: /
User-agent: Python-urllib
Disallow: /
User-agent: Ezooms
Disallow: /
User-agent: UnwindFetchor
Disallow: /
User-agent: Flipboard
Disallow: /
User-agent: voltron
Disallow: /
User-agent: IstellaBot
Disallow: /
User-agent: silk
Disallow: /
User-agent: Wget
Disallow: /
User-agent: UptimeRobot
Disallow: /
User-agent: UptimeRobot/2.0
Disallow: /
User-agent: ScreenerBot
Disallow: /
User-agent: SearchmetricsBot
Disallow: /
User-agent: WeSEE
Disallow: /
User-agent: linkdexbot/2.0
Disallow: /
User-agent: linkdexbot/2.1
Disallow: /
User-agent: linkdexbot/2.2
Disallow: /
User-agent: Uptimebot
Disallow: /
User-agent: Uptimebot/1.0
Disallow: /
User-agent: Lipperhey
Disallow: /
User-agent: ltx71
Disallow: /
User-agent: Python-urllib/2.7
Disallow: /
User-agent: Sogou web spider/4.0
Disallow: /
User-agent: Baiduspider/2.0
Disallow: /
User-agent: PrivacyAwareBot/1.1
Disallow: /
User-agent: yoozBot-2.2
Disallow: /
User-agent: wget
Disallow: /
User-agent: tweetmeme
Disallow: /
User-agent: DoCoMo/2.0
Disallow: /
User-agent: ichiro/4.0
Disallow: /
User-agent: ichiro/3.0
Disallow: /
User-agent: TwengaBot-Discover
Disallow: /
User-agent: TwengaBot/2.0
Disallow: /
User-agent: TwengaBot
Disallow: /
User-agent: bendercrawler
Disallow: /
User-agent: baidu
Disallow: /
User-agent: bsalsa
Disallow: /
User-agent: phpservermon/3.1.1
Disallow: /
User-agent: Gluten Free Crawler/1.0
Disallow: /
User-agent: Gluten Free Crawler
Disallow: /
User-agent: Sogou Pic Spider/3.0
Disallow: /
User-agent: Sogou head spider/3.0
Disallow: /
User-agent: Sogou Orion spider/3.0
Disallow: /
User-agent: Sogou-Test-Spider/4.0
Disallow: /
User-agent: Sogou Pic Agent
Disallow: /
User-agent: Baiduspider+
Disallow: /
User-agent: Baiduspider-video
Disallow: /
User-agent: Baiduspider-image
Disallow: /
User-agent: YoudaoBot/1.0
Disallow: /
User-agent: ChangeDetection
Disallow: /
User-agent: SurdotlyBot
Disallow: /
User-agent: libwww-perl
Disallow: /
User-agent: MojeekBot
Disallow: /
User-agent: Sogou web spider
Disallow: /
Подпишитесь на наш блог!

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

Спасибо!
Ура! Теперь вы подписаны на наш блог!
Пожалуйста, проверьте свой email и подтвердите подписку.