Что такое robots.txt? Настройка для чайников

Что такое robots.txt? Основы SEO

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

По факту robots.txt — это текстовый файл, который управляет доступом к содержимому сайтов. Редактировать его можно на своем компьютере в программе Notepad++ или непосредственно на хостинге.

Что такое robots.txt

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

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

На некоторых конструкторах сайтов файл формируется сам. Например, Wix автоматически создает robots.txt. Чтобы посмотреть файл, добавьте к домену «/robots.txt». Если вы увидите там странные элементы типа «noflashhtml» и «backhtml», не пугайтесь: они относятся к структуре сайтов на платформе и не влияют на отношение поисковых систем.

Зачем нужен этот файл

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

  • дубли страниц;
  • служебные файлы;
  • файлы, которые бесполезны для посетителей;
  • страницы с неуникальным контентом.

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

Из чего состоит robots.txt

Файл должен называться только «robots.txt» строчными буквами и никак иначе. Его размещают в корневом каталоге — https://site.ru/robots.txt в единственном экземпляре. В ответ на запрос он должен отдавать HTTP-код со статусом 200 ОК. Вес файла не должен превышать 32 КБ. Это максимум, который будет воспринимать Яндекс, для Google robots может весить до 500 КБ.

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

В robots.txt с помощью специальных терминов прописываются директивы (команды или инструкции). Кратко о директивах для поисковых ботах:

«Us-agent:» — основная директива robots.txt

Используется для конкретизации поискового робота, которому будут давать указания. Например, User-agent: Googlebot или User-agent: Yandex.

В файле robots.txt можно обратиться ко всем остальным поисковым системам сразу. Команда в этом случае будет выглядеть так: User-agent: *. Под специальным символом «*» принято понимать «любой текст».

После основной директивы «User-agent:» следуют конкретные команды.

Команда «Disallow:» — запрет индексации в robots.txt

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

User-agent: Yandex
Disallow: /

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

User-agent: Yandex
Disallow: /wp-admin

На этот раз уточнения имеются и касаются они системной папки wp-admin в CMS WordPressТо есть индексирующему роботу рекомендовано отказаться от индексации всей этой папки.

Команда «Allow:» — разрешение индексации в robots.txt

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

User-agent: *
Allow: /catalog 
Disallow: /

Разрешено сканировать все, что начинается с «/catalog», а все остальное запрещено.

На практике «Allow:» используется не так уж и часто. В ней нет надобности, поскольку она применяется автоматически. В  robots «разрешено все, что не запрещено». Владельцу сайта достаточно воспользоваться директивой «Disallow:», запретив к индексации какое-то содержимое, а весь остальной контент ресурса воспринимается поисковым роботом как доступный для индексации.

Директива «Sitemap:» — указание на карту сайта

«Sitemap:» указывает индексирующему роботу правильный путь к так Карте сайта — файлам sitemap.xml и sitemap.xml.gz в случае с CMS WordPress.

User-agent: *
Sitemap: http://site.com/sitemap.xml
Sitemap: http://site.com/sitemap.xml.gz

Прописывание команды в файле robots.txt поможет поисковому роботу быстрее проиндексировать Карту сайта. Это ускорит процесс попадания страниц ресурса в выдачу.

Crawl-delay

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

Пример:

Crawl-delay: 10

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

Clean-param

Директива Clean-param закрывает от индексации дубли страниц с разными адресами. Например, если вы продвигаетесь через контекстную рекламу, на сайте будут появляться страницы с utm-метками. Чтобы подобные страницы не плодили дубли, мы можем закрыть их с помощью данной директивы.

Пример:

Clean-Param: utm_source&utm_medium&utm_campaign

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

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

Вот пример:

#Это файл robots.txt. Все что написано в данной строке, роботы не прочтут
User-agent: Yandex #Комментарий
Disallow: /yellow #закрыл от индексации, так как на странице неуникальный контент

Файл robots.txt готов

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

Что делать дальше:

  • проверить корректность созданного документа, например, посредством сервиса Яндекса;
  • при помощи FTP-клиента закачать готовый файл в корневую папку своего сайта. В ситуации с WordPress речь обычно идет о системной папке Public_html.

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

Как посмотреть robots.txt чужого сайта

Если вам интересно сперва посмотреть на готовые примеры файла robots.txt в исполнении других, то нет ничего проще. Для этого в адресной строке браузера достаточно ввести site.ru/robots.txt. Вместо «site.ru» — название интересующего вас ресурса.

Правильный robots.txt для Bitrix

User-agent: *               # правила для всех роботов
Disallow: /cgi-bin          # папка на хостинге
Disallow: /bitrix/          # папка с системными файлами битрикса
Disallow: *bitrix_*=        # GET-запросы битрикса
Disallow: /local/           # папка с системными файлами битрикса
Disallow: /*index.php$      # дубли страниц index.php
Disallow: /auth/            # авторизация
Disallow: *auth=            # авторизация
Disallow: /personal/        # личный кабинет
Disallow: *register=        # регистрация
Disallow: *forgot_password= # забыли пароль
Disallow: *change_password= # изменить пароль
Disallow: *login=           # логин
Disallow: *logout=          # выход
Disallow: */search/         # поиск
Disallow: *action=          # действия
Disallow: *print=           # печать
Disallow: *?new=Y           # новая страница
Disallow: *?edit=           # редактирование
Disallow: *?preview=        # предпросмотр
Disallow: *backurl=         # трекбеки
Disallow: *back_url=        # трекбеки
Disallow: *back_url_admin=  # трекбеки
Disallow: *captcha          # каптча
Disallow: */feed            # все фиды
Disallow: */rss             # rss фид
Disallow: *?FILTER*=        # здесь и ниже различные популярные параметры фильтров
Disallow: *?ei=
Disallow: *?p=
Disallow: *?q=
Disallow: *?tags=
Disallow: *B_ORDER=
Disallow: *BRAND=
Disallow: *CLEAR_CACHE=
Disallow: *ELEMENT_ID=
Disallow: *price_from=
Disallow: *price_to=         
Disallow: *PROPERTY_TYPE=
Disallow: *PROPERTY_WIDTH=
Disallow: *PROPERTY_HEIGHT=
Disallow: *PROPERTY_DIA=
Disallow: *PROPERTY_OPENING_COUNT=
Disallow: *PROPERTY_SELL_TYPE=
Disallow: *PROPERTY_MAIN_TYPE=    
Disallow: *PROPERTY_PRICE[*]=
Disallow: *S_LAST=  
Disallow: *SECTION_ID=
Disallow: *SECTION[*]=
Disallow: *SHOWALL= 
Disallow: *SHOW_ALL=
Disallow: *SHOWBY=
Disallow: *SORT=
Disallow: *SPHRASE_ID=        
Disallow: *TYPE=
Disallow: *utm*=            # ссылки с utm-метками
Disallow: *openstat=        # ссылки с метками openstat
Disallow: *from=            # ссылки с метками from
Allow: */upload/            # открываем папку с файлами uploads
Allow: /bitrix/*.js         # здесь и далее открываем для индексации скрипты
Allow: /bitrix/*.css
Allow: /local/*.js
Allow: /local/*.css
Allow: /local/*.jpg
Allow: /local/*.jpeg
Allow: /local/*.png
Allow: /local/*.gif

# Укажите один или несколько файлов Sitemap
Sitemap: http://site.ru/sitemap.xml
Sitemap: http://site.ru/sitemap.xml.gz

В примере я не добавляю правило Crawl-Delay, т.к. в большинстве случаев эта директива не нужна. Однако если у вас крупный нагруженный ресурс, то использование этой директивы поможет снизить нагрузку на сайт со стороны роботов Яндекса, Mail.Ru, Bing, Yahoo и других (Google не учитывает)

На старых сайтах вы можете увидеть директиву Host в файле robots.txt.

Host: www.site.ru

Она обозначает главное зеркало сайта. Команда стала необязательной. На данный момент все основные поисковые системы команду Host не учитывают.

Долгое время Host поддерживался Яндексом. Но с 2018-го года и российский поисковик для определения главного зеркала стал учитывать только 301-редиректы (пруф).

При этом наличие этой команды в файле robots.txt ошибкой не является.

Ошибочные рекомендации для Robots.txt на Bitrix

  1. Закрывать от индексации страницы пагинации
    Правило Disallow: *?PAGEN_1= является ошибкой. Страницы пагинации должны индексироваться. Но на таких страницах обязательно должен быть прописан мета-тег canonical.
  2. Закрывать файлы изображений и файлов для скачивания (DOC, DOCX, XLS, XLSX, PDF, PPT, PPTS и др.)
    Это делать не нужно. Если у вас есть правило Disallow: /upload/, удалите его.
  3. Закрывать страницы тегов и категорий
    Если ваш сайт действительно имеет такую структуру, что на этих страницах контент дублируется и в них нет особой ценности, то лучше закрыть. Однако нередко продвижение ресурса осуществляется в том числе за счет страниц категорий и тегирования. В этом случае можно потерять часть трафика.
  4. Прописать Crawl-Delay
    Модное правило. Однако его нужно указывать только тогда, когда действительно есть необходимость ограничить посещение роботами вашего сайта. Если сайт небольшой и посещения не создают значительной нагрузки на сервер, то ограничивать время «чтобы было» будет не самой разумной затеей.

Правильный robots.txt для WordPress

Кстати, если вы поставите #, то сможете оставлять комментарии, которые не будут учитываться роботами.

User-agent: *
Disallow: /cgi-bin # папка на хостинге
Disallow: /wp-admin
Disallow: /wp-includes 
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-json/ # Все служебные файлы можно закрыть другим образом: Disallow: /wp-
Disallow: /xmlrpc.php # файл WordPress API
Disallow: /*? # поиск
Disallow: /?s= # поиск
Allow: /*.css # стили
Allow: /*.js # скрипты

Sitemap: https://site.ru/sitemap.xml # путь к карте сайта (надо прописать свой сайт)

Правильный robots.txt для Joomla

User-agent: *
Disallow: /administrator/ 
Disallow: /bin/
Disallow: /cache/
Disallow: /cli/
Disallow: /components/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /layouts/
Disallow: /libraries/
Disallow: /logs/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/

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

Правильный robots.txt для MODX Revo

User-agent: *          # правила для всех роботов
Disallow: /cgi-bin          # папка на хостинге
Disallow: /manager/         # авторизация
Disallow: /assets/          # папка с системными файлами modx
Disallow: /core/            # папка с системными файлами modx
Disallow: /connectors/      # папка с системными файлами modx
Disallow: /index.php        # дубли страниц index.php
Disallow: *?*               # ссылки с параметрами
Disallow: *utm*=            # ссылки с utm-метками
Disallow: *openstat=        # ссылки с метками openstat
Disallow: *from=            # ссылки с метками from
Allow: /assets/*.jpg        # здесь и далее открываем для индексации изображения, файлы и скрипты
Allow: /assets/*.jpeg 
Allow: /assets/*.gif 
Allow: /assets/*.png 
Allow: /assets/*.pdf 
Allow: /assets/*.doc 
Allow: /assets/*.docx 
Allow: /assets/*.xls 
Allow: /assets/*.xlsx 
Allow: /assets/*.ppt 
Allow: /assets/*.pptx 
Allow: /assets/*.js 
Allow: /assets/*.css
Allow: *?page=             # открываем для индексации страницы пагинации (и проверьте, чтобы для них был настроен canonical)

# Укажите один или несколько файлов Sitemap
Sitemap: http://site.ru/sitemap.xml
Sitemap: http://site.ru/sitemap.xml.gz

# Укажите главное зеркало сайта, как в примере ниже (с WWW / без WWW, если HTTPS 
# то пишем протокол, если нужно указать порт, указываем). Команда стала необязательной. Ранее Host понимал 
# Яндекс и Mail.RU. Теперь все основные поисковые системы команду Host не учитывают.
Host: www.site.ru

Правильный robots.txt для Drupal

User-agent: *
Disallow: /database/
Disallow: /includes/
Disallow: /misc/
Disallow: /modules/
Disallow: /sites/
Disallow: /themes/
Disallow: /scripts/
Disallow: /updates/
Disallow: /profiles/
Disallow: /profile
Disallow: /profile/*
Disallow: /xmlrpc.php
Disallow: /cron.php
Disallow: /update.php
Disallow: /install.php
Disallow: /index.php
Disallow: /admin/
Disallow: /comment/reply/
Disallow: /contact/
Disallow: /logout/
Disallow: /search/
Disallow: /user/register/
Disallow: /user/password/
Disallow: *register*
Disallow: *login*
Disallow: /top-rated-
Disallow: /messages/
Disallow: /book/export/
Disallow: /user2userpoints/
Disallow: /myuserpoints/
Disallow: /tagadelic/
Disallow: /referral/
Disallow: /aggregator/
Disallow: /files/pin/
Disallow: /your-votes
Disallow: /comments/recent
Disallow: /*/edit/
Disallow: /*/delete/
Disallow: /*/export/html/
Disallow: /taxonomy/term/*/0$
Disallow: /*/edit$
Disallow: /*/outline$
Disallow: /*/revisions$
Disallow: /*/contact$
Disallow: /*downloadpipe
Disallow: /node$
Disallow: /node/*/track$
Disallow: /*&
Disallow: /*%
Disallow: /*?page=0
Disallow: /*section
Disallow: /*order
Disallow: /*?sort*
Disallow: /*&sort*
Disallow: /*votesupdown
Disallow: /*calendar
Disallow: /*index.php
Allow: /*?page=
Disallow: /*?
Sitemap: https://site.ru/sitemap.xml

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

Многие оптимизаторы, делая первые шаги в работе с robots.txt, задаются логичным вопросом о том, почему нельзя указать общий User-agent: * и не указывать для робота каждой поисковой системы одни и те же инструкции. Дело в том, что поисковик Google более позитивно воспринимает директиву User-agent: Googlebot в файле robots, как и Яндекс отдельную директиву User-agent: Yandex.

Прописывая правила отдельно для Google и Яндекс, вы сможете управлять индексацией страниц и разделов веб-ресурса посредством Robots. Более того, применяя персональные User-agent можно запретить индексацию некоторых файлов Google, при этом оставить их доступными для роботов Яндекса, и наоборот.

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

Заключение

Файл Robots – это один из ключевых инструментов для успешного SEO-продвижения сайта. С его помощью вы можете непосредственно влиять на включение в индекс различных страниц и разделов веб-ресурса.

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

Дмитрий Монакс

Автор блога SEO.Monaks.ru
Продвижение сайтов и контекстная реклама с 2009 года

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

По сотрудничеству в раздел — «КОНТАКТЫ»

Оцените автора
Напишите вопрос или комментарий, я отвечу