ROBOTS.TXT - Стандарт исключений для роботов - файл в текстовом формате.txt для ограничения доступа роботам к содержимому сайта. Файл должен находиться в корне сайта (по адресу /robots.txt). Использование стандарта необязательно, но поисковые системы следуют правилам, содержащимся в robots.txt. Сам файл состоит из набора записей вида
<поле>:<необязательный пробел><значение><необязательный пробел>
где поле - название правила (User-Agent, Disallow, Allow и проч.)
Записи разделяются одной или более пустых строк (признак конца строки: символы CR, CR+LF, LF)
В данном пункте приведены основные требования по настройке файла, конкретные рекомендации по настройке здесь, примеры для популярных CMS здесь.
Таким образом минимальное содержание правильно настроенного файла robots.txt выглядит так:
User-agent: * #для всех агентов Disallow: #запрещено ничего = разрешен доступ ко всем файлам
Создать файл возможно с помощью любого текстового редактора (например, notepad++). Кодировка файла должна быть ASCII или UTF-8, а размер файла не должен превышать 32 КБ. Для создания, либо изменения файла robots.txt обычно требуется доступ к серверу по FTP/SSH, впрочем, многие CMS/CMF имеют встроенный интерфейс управления содержимым файла через панель администрирования (“админку”), например: Bitrix, ShopScript и другие. Файл доступен в браузере когда он создан и работает корректно.
Как видно из определения, robots.txt позволяет управлять поведением роботов при посещении сайта, т.е. настроить индексирование сайта поисковыми системами - это делает данный файл важной частью SEO-оптимизации вашего сайта. Самая важная возможность robots.txt - запрет на индексацию страниц / файлов не содержащих полезную информацию. Либо вообще всего сайта, что может быть необходимо, например, для тестовых версий сайта.
Основные примеры того, что нужно закрывать от индексации будут рассмотрены ниже.
Во-первых, всегда следует запрещать индексацию сайтов в процессе разработки, чтобы избежать попадания в индекс страниц, которых вообще не будет на готовой версии сайта и страниц с отсутствующим / дублированным / тестовым контентом до того как они будут заполнены.
Во-вторых, следует запретить индексировать копии сайта, созданные как тестовые площадки для разработки.
В-третьих, разберем какой контент непосредственно на сайте нужно запрещать индексировать.
Теперь остановимся на синтаксисе robots.txt более подробно.
User-agent: Yandex Disallow: /cgi-bin* # блокирует доступ к страницам Disallow: /cgi-bin # то же самое
User-agent: * #для всех Allow: /$ #разрешить индексацию главной страницы Disallow: * #запретить индексацию всех страниц, кроме разрешенной
Обязательная директива. Определяет к какому роботу относится правило, в правиле может быть одна или несколько таких директив. Можно использовать символ * как указание префикса, суффикса или полного названия робота. Пример:
#сайт закрыт для Google.Новости и Google.Картинки User-agent: Googlebot-Image User-agent: Googlebot-News Disallow: / #для всех роботов, чье название начинается с Yandex, закрываем раздел “Новости” User-agent: Yandex* Disallow: /news #открыт для всех остальных User-agent: * Disallow:
В каждом правиле должна быть по крайней мере одна директива Disallow: или Allow:.
Директива указывает какие файлы или каталоги нельзя индексировать. Значение директивы должно начинаться с символа / либо *. По умолчанию в конце значения проставляется *, если это не запрещено символом $.
В каждом правиле должна быть по крайней мере одна директива Disallow: или Allow:.
Директива указывает какие файлы или каталоги следует индексировать. Значение директивы должно начинаться с символа / либо *. По умолчанию в конце значения проставляется *, если это не запрещено символом $.
Использование директивы актуально только совместно с Disallow для разрешения индексации какого-то подмножества запрещенных к индексированию страниц директивой Disallow.
Необязательная, межсекционная директива. Используйте директиву Clean-param, если адреса страниц сайта содержат GET-параметры (в URL отображается после знака ?), которые не влияют на их содержимое (например, UTM). С помощью данного правила все адреса будут приведены к единому виду - исходному, без параметров.
Роботы Google не учитывают данную директиву.
Синтаксис директивы:
Clean-param: p0[&p1&p2&..&pn] [path]
p0… - названия параметров, которые не нужно учитывать
path - префикс пути страниц, для которых применяется правило
Пример.
На сайте есть страницы вида
www.example.com/some_dir/get_book.pl?ref=site_1&book_id=123 www.example.com/some_dir/get_book.pl?ref=site_2&book_id=123 www.example.com/some_dir/get_book.pl?ref=site_3&book_id=123
При указании правила
User-agent: Yandex Disallow: Clean-param: ref /some_dir/get_book.pl
робот сведет все адреса страницы к одному:
www.example.com/some_dir/get_book.pl?book_id=123
Необязательная директива, возможно размещение нескольких таких директив в одном файле, межсекционная (достаточно указать в файле один раз, не дублируя для каждого агента).
Используется для указания ссылки на xml-карту сайта. Должен быть указан полный URL.
Пример:
Sitemap: https://example.com/sitemap.xml
Директива позволяет задать поисковому роботу минимальный период времени (в секундах) между окончанием загрузки одной страницы и началом загрузки следующей. Поддерживаются дробные значения.
Минимально допустимое значение для роботов Яндекс - 2.0.
Роботы Google не учитывают данную директиву.
Пример:
User-agent: Yandex Crawl-delay: 2.0 # задает тайм-аут в 2 секунды User-agent: * Crawl-delay: 1.5 # задает тайм-аут в 1.5 секунды
Директива указывает главное зеркало сайта. На данный момент из популярных поисковых систем поддерживается только Mail.ru.
Пример:
User-agent: Mail.Ru Host: www.site.ru # главное зеркало с www
В CMS Битрикс предусмотрена возможность управления содержимым файла robots.txt. Для этого в административном интерфейсе нужно зайти в инструмент “Настройка robots.txt”, воспользовавшись поиском, либо по пути Маркетинг->Поисковая оптимизация->Настройка robots.txt. Также можно изменить содержимое robots.txt через встроенный редактор файлов Битрикс, либо через FTP.
Приведенный ниже пример может использоваться как стартовый набор robots.txt для сайтов на Битрикс, но не является универсальным и требует адаптации в зависимости сайта.
Пояснения:
User-Agent: Yandex Disallow: */index.php Disallow: /bitrix/ Disallow: /*filter Disallow: /*order Disallow: /*show_include_exec_time= Disallow: /*show_page_exec_time= Disallow: /*show_sql_stat= Disallow: /*bitrix_include_areas= Disallow: /*clear_cache= Disallow: /*clear_cache_session= Disallow: /*ADD_TO_COMPARE_LIST Disallow: /*ORDER_BY Disallow: /*?print= Disallow: /*&print= Disallow: /*print_course= Disallow: /*?action= Disallow: /*&action= Disallow: /*register= Disallow: /*forgot_password= Disallow: /*change_password= Disallow: /*login= Disallow: /*logout= Disallow: /*auth= Disallow: /*backurl= Disallow: /*back_url= Disallow: /*BACKURL= Disallow: /*BACK_URL= Disallow: /*back_url_admin= Disallow: /*?utm_source= Disallow: /*?bxajaxid= Disallow: /*&bxajaxid= Disallow: /*?view_result= Disallow: /*&view_result= Disallow: /*?PAGEN*& Disallow: /*&PAGEN Allow: */?PAGEN* Allow: /bitrix/components/*/ Allow: /bitrix/cache/*/ Allow: /bitrix/js/*/ Allow: /bitrix/templates/*/ Allow: /bitrix/panel/*/ Allow: /bitrix/components/*/*/ Allow: /bitrix/cache/*/*/ Allow: /bitrix/js/*/*/ Allow: /bitrix/templates/*/*/ Allow: /bitrix/panel/*/*/ Allow: /bitrix/components/ Allow: /bitrix/cache/ Allow: /bitrix/js/ Allow: /bitrix/templates/ Allow: /bitrix/panel/ Clean-Param: PAGEN_1 / Clean-Param: PAGEN_2 / #если на сайте больше компонентов с пагинацией, то дублировать правило для всех вариантов, меняя номер Clean-Param: sort Clean-Param: utm_source&utm_medium&utm_campaign Clean-Param: openstat User-Agent: * Disallow: */index.php Disallow: /bitrix/ Disallow: /*filter Disallow: /*sort Disallow: /*order Disallow: /*show_include_exec_time= Disallow: /*show_page_exec_time= Disallow: /*show_sql_stat= Disallow: /*bitrix_include_areas= Disallow: /*clear_cache= Disallow: /*clear_cache_session= Disallow: /*ADD_TO_COMPARE_LIST Disallow: /*ORDER_BY Disallow: /*?print= Disallow: /*&print= Disallow: /*print_course= Disallow: /*?action= Disallow: /*&action= Disallow: /*register= Disallow: /*forgot_password= Disallow: /*change_password= Disallow: /*login= Disallow: /*logout= Disallow: /*auth= Disallow: /*backurl= Disallow: /*back_url= Disallow: /*BACKURL= Disallow: /*BACK_URL= Disallow: /*back_url_admin= Disallow: /*?utm_source= Disallow: /*?bxajaxid= Disallow: /*&bxajaxid= Disallow: /*?view_result= Disallow: /*&view_result= Disallow: /*utm_ Disallow: /*openstat= Disallow: /*?PAGEN*& Disallow: /*&PAGEN Allow: */?PAGEN* Allow: /bitrix/components/*/ Allow: /bitrix/cache/*/ Allow: /bitrix/js/*/ Allow: /bitrix/templates/*/ Allow: /bitrix/panel/*/ Allow: /bitrix/components/*/*/ Allow: /bitrix/cache/*/*/ Allow: /bitrix/js/*/*/ Allow: /bitrix/templates/*/*/ Allow: /bitrix/panel/*/*/ Allow: /bitrix/components/ Allow: /bitrix/cache/ Allow: /bitrix/js/ Allow: /bitrix/templates/ Allow: /bitrix/panel/ Sitemap: http://site.com/sitemap.xml #заменить на адрес вашей карты сайта
В “админке” Вордпресс нет встроенного инструмента для добавления и настройки robots.txt, поэтому доступ к файлу возможен только с помощью FTP, либо после установки специального плагина (например, DL Robots.txt).
Приведенный ниже пример может использоваться как стартовый набор robots.txt для сайтов на Wordpress, но не является универсальным и требует адаптации в зависимости сайта.
Пояснения:
Пример правильного ROBOTS.TXT для сайта на WoRdPress:
User-agent: Yandex # Для Яндекса Disallow: /cgi-bin Disallow: /? Disallow: /wp- Disallow: *?s= Disallow: *&s= Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: /xmlrpc.php Disallow: /tag/ Disallow: /readme.html Disallow: *?replytocom Allow: */uploads Allow: /*/*.js Allow: /*/*.css Allow: /wp-*.png Allow: /wp-*.jpg Allow: /wp-*.jpeg Allow: /wp-*.gif Clean-Param: utm_source&utm_medium&utm_campaign Clean-Param: openstat User-agent: * Disallow: /cgi-bin Disallow: /? Disallow: /wp- Disallow: *?s= Disallow: *&s= Disallow: /search/ Disallow: /author/ Disallow: /users/ Disallow: */trackback Disallow: */feed Disallow: */rss Disallow: */embed Disallow: /xmlrpc.php Disallow: *?utm Disallow: *openstat= Disallow: /tag/ Disallow: /readme.html Disallow: *?replytocom Allow: */uploads Allow: /*/*.js Allow: /*/*.css Allow: /wp-*.png Allow: /wp-*.jpg Allow: /wp-*.jpeg Allow: /wp-*.gif Sitemap: http://site.com/sitemap.xml #заменить на адрес вашей карты сайта
В “админке” OpenCart нет встроенного инструмента для настройки robots.txt, поэтому доступ к файлу возможен только с помощью FTP.
Приведенный ниже пример может использоваться как стартовый набор robots.txt для сайтов на OpenCart, но не является универсальным и требует адаптации в зависимости сайта.
Пояснения:
User-agent: * Disallow: /*route=account/ Disallow: /*route=affiliate/ Disallow: /*route=checkout/ Disallow: /*route=product/search Disallow: /index.php?route=product/product*&manufacturer_id= Disallow: /admin Disallow: /catalog Disallow: /system Disallow: /*?sort= Disallow: /*&sort= Disallow: /*?order= Disallow: /*&order= Disallow: /*?limit= Disallow: /*&limit= Disallow: /*?filter_name= Disallow: /*&filter_name= Disallow: /*?filter_sub_category= Disallow: /*&filter_sub_category= Disallow: /*?filter_description= Disallow: /*&filter_description= Disallow: /*?tracking= Disallow: /*&tracking= Disallow: /*compare-products Disallow: /*search Disallow: /*cart Disallow: /*checkout Disallow: /*login Disallow: /*logout Disallow: /*vouchers Disallow: /*wishlist Disallow: /*my-account Disallow: /*order-history Disallow: /*newsletter Disallow: /*return-add Disallow: /*forgot-password Disallow: /*downloads Disallow: /*returns Disallow: /*transactions Disallow: /*create-account Disallow: /*recurring Disallow: /*address-book Disallow: /*reward-points Disallow: /*affiliate-forgot-password Disallow: /*create-affiliate-account Disallow: /*affiliate-login Disallow: /*affiliates Disallow: /*?filter_tag= Disallow: /*brands Disallow: /*specials Disallow: /*simpleregister Disallow: /*simplecheckout Disallow: *utm= Disallow: /*&page Disallow: /*?page*& Allow: /*?page Allow: /catalog/view/javascript/ Allow: /catalog/view/theme/*/ User-agent: Yandex Disallow: /*route=account/ Disallow: /*route=affiliate/ Disallow: /*route=checkout/ Disallow: /*route=product/search Disallow: /index.php?route=product/product*&manufacturer_id= Disallow: /admin Disallow: /catalog Disallow: /system Disallow: /*?sort= Disallow: /*&sort= Disallow: /*?order= Disallow: /*&order= Disallow: /*?limit= Disallow: /*&limit= Disallow: /*?filter_name= Disallow: /*&filter_name= Disallow: /*?filter_sub_category= Disallow: /*&filter_sub_category= Disallow: /*?filter_description= Disallow: /*&filter_description= Disallow: /*compare-products Disallow: /*search Disallow: /*cart Disallow: /*checkout Disallow: /*login Disallow: /*logout Disallow: /*vouchers Disallow: /*wishlist Disallow: /*my-account Disallow: /*order-history Disallow: /*newsletter Disallow: /*return-add Disallow: /*forgot-password Disallow: /*downloads Disallow: /*returns Disallow: /*transactions Disallow: /*create-account Disallow: /*recurring Disallow: /*address-book Disallow: /*reward-points Disallow: /*affiliate-forgot-password Disallow: /*create-affiliate-account Disallow: /*affiliate-login Disallow: /*affiliates Disallow: /*?filter_tag= Disallow: /*brands Disallow: /*specials Disallow: /*simpleregister Disallow: /*simplecheckout Disallow: /*&page Disallow: /*?page*& Allow: /*?page Allow: /catalog/view/javascript/ Allow: /catalog/view/theme/*/ Clean-Param: page / Clean-Param: utm_source&utm_medium&utm_campaign / Sitemap: http://site.com/sitemap.xml #заменить на адрес вашей карты сайта
В “админке” Джумла нет встроенного инструмента для настройки robots.txt, поэтому доступ к файлу возможен только с помощью FTP. В стандартном файле Joomla до версии 3.3 роботы не понимают оформление сайта (не видят часть контента), не видят изображений. Кроме того, в файле закрыты основные служебные директории, но в то же время много ненужной информации остается открытой.
Приведенный ниже пример может использоваться как стартовый набор robots.txt для сайтов на Joomla с включенным SEF, но не является универсальным и требует адаптации в зависимости сайта.
Пояснения:
User-agent: Yandex Disallow: /*% Disallow: /administrator/ Disallow: /bin/ Disallow: /cache/ Disallow: /cli/ Disallow: /components/ Disallow: /includes/ Disallow: /installation/ Disallow: /language/ Disallow: /layouts/ Disallow: /libraries/ Disallow: /logs/ Disallow: /log/ Disallow: /tmp/ Disallow: /xmlrpc/ Disallow: /plugins/ Disallow: /modules/ Disallow: /component/ Disallow: /search* Disallow: /*mailto/ Allow: /*.css?*$ Allow: /*.less?*$ Allow: /*.js?*$ Allow: /*.jpg?*$ Allow: /*.png?*$ Allow: /*.gif?*$ Allow: /templates/*.css Allow: /templates/*.less Allow: /templates/*.js Allow: /components/*.css Allow: /components/*.less Allow: /media/*.js Allow: /media/*.css Allow: /media/*.less Allow: /index.php?*view=sitemap* #открываем карту сайта Clean-param: searchword / Clean-param: limit&limitstart / Clean-param: keyword / User-agent: * Disallow: /*% Disallow: /administrator/ Disallow: /bin/ Disallow: /cache/ Disallow: /cli/ Disallow: /components/ Disallow: /includes/ Disallow: /installation/ Disallow: /language/ Disallow: /layouts/ Disallow: /libraries/ Disallow: /logs/ Disallow: /log/ Disallow: /tmp/ Disallow: /xmlrpc/ Disallow: /plugins/ Disallow: /modules/ Disallow: /component/ Disallow: /search* Disallow: /*mailto/ Disallow: /*searchword Disallow: /*keyword Allow: /*.css?*$ Allow: /*.less?*$ Allow: /*.js?*$ Allow: /*.jpg?*$ Allow: /*.png?*$ Allow: /*.gif?*$ Allow: /templates/*.css Allow: /templates/*.less Allow: /templates/*.js Allow: /components/*.css Allow: /components/*.less Allow: /media/*.js Allow: /media/*.css Allow: /media/*.less Allow: /index.php?*view=sitemap* #открываем карту сайта Sitemap: http://ваш_адрес_карты_сайта
Бот | Функция |
|
|
Googlebot | основной индексирующий робот Google |
Googlebot-News | Google Новости |
Googlebot-Image | Google Картинки |
Googlebot-Video | видео |
Mediapartners-Google | Google AdSense, Google Mobile AdSense |
Mediapartners | Google AdSense, Google Mobile AdSense |
AdsBot-Google | проверка качества целевой страницы |
AdsBot-Google-Mobile-Apps | Робот Google для приложений |
Яндекс |
|
YandexBot | основной индексирующий робот Яндекса |
YandexImages | Яндекс.Картинки |
YandexVideo | Яндекс.Видео |
YandexMedia | мультимедийные данные |
YandexBlogs | робот поиска по блогам |
YandexAddurl | робот, обращающийся к странице при добавлении ее через форму «Добавить URL» |
YandexFavicons | робот, индексирующий пиктограммы сайтов (favicons) |
YandexDirect | Яндекс.Директ |
YandexMetrika | Яндекс.Метрика |
YandexCatalog | Яндекс.Каталог |
YandexNews | Яндекс.Новости |
YandexImageResizer | робот мобильных сервисов |
Bing |
|
Bingbot | основной индексирующий робот Bing |
Yahoo! |
|
Slurp | основной индексирующий робот Yahoo! |
Mail.Ru |
|
Mail.Ru | основной индексирующий робот Mail.Ru |
Проверка валидности robots.txt, а также проверка страниц сайта на возможность индексирования может быть осуществлена с помощью специальных инструментов поисковых систем:
По результатам проверки robots.txt на ошибки вы можете внести необходимые корректировки. Если краулер не получает ответ 200 ОК, то он считает, что файла нет, и сайт открыт для индексации полностью.
Чтобы посмотреть robots.txt чужого сайта достаточно открыть в вашем браузере адрес вида сайт.ru/robots.txt. Также можно воспользоваться одним из онлайн-инструментов для проверки robots.txt чужого сайта, например, инструментом Яндекс.Вебмастера.
Текстовый файл robots.txt является общедоступным, что следует учитывать, и не использовать данный файл как средство сокрытия конфиденциальной информации.
Принципиальных отличий в обработке robots.txt поисковыми системами Яндекс и Google нет, но все же следует выделить ряд моментов:
В документации по работе с robots.txt Google указывает, что “..не предназначена для того, чтобы запрещать показ веб-страниц в результатах поиска Google. “ и “Если файл robots.txt запрещает роботу Googlebot обрабатывать веб-страницу, она все равно может демонстрироваться в Google”. Для исключения страниц из поиска Google необходимо использовать мета-теги robots.
Яндекс же исключает из поиска страницы, руководствуясь правилами robots.txt.
Чтобы закрыть сайт (запретить его индексацию) в Robots.txt нужно использовать одно из следующих правил:
User-agent: * Disallow: /
User-agent: * Disallow: *
Запретить индексацию можно как для всего сайта, так и для отдельных элементов, например, устаревшие данные, служебную информацию, сессии и utm-метки. Для каждого запрета создавайте отдельное правило. Запрещайте всем поисковым роботам через * или указывайте название конкретного краулера. Возможно закрыть сайт только для какой-то одной поисковой системы (или нескольких), при этом оставив остальным возможность индексирования. Для этого в правиле нужно изменить директиву User-agent: заменить * на название агента, которому нужно закрыть доступ (здесь можно ознакомиться с перечнем основных агентов).
В обычном случае, чтобы открыть сайт для индексации в robots.txt не нужно предпринимать никаких действий, просто нужно убедиться, что в robots.txt открыты все необходимые директории. Например, если ранее ваш сайт был скрыт от индексации, то следует удалить из robots.txt следующие правила (в зависимости от использованного):
Обратите внимание, что индексация может быть запрещена не только с помощью файла robots.txt, но и использованием мета-тега robots.
Также следует учесть, что отсутствие файла robots.txt в корне сайта означает, что индексация сайта разрешена.
На данный момент указание главного зеркала с помощью robots.txt невозможно. Ранее ПС Яндекс использовала директиву Host, которая и содержала указание на главное зеркало, но с 20 марта 2018 Яндекс полностью отказался от ее использования. Сейчас указание главного зеркала возможно только с помощью 301-го постраничного редиректа.
Файл robots.txt должен находиться в корневой папке сайта. Чаще всего название папки совпадает с доменным именем вашего сайта. Если файл существует, то он будет доступен по адресу домен_сайта/robots.txt.
Для поисковой системы Google настройка файла мало чем отличается от вышенаписанного. Но все же имеются рекомендации от Google, на которые нужно обратить внимание, это:
Заметим, что файлы скриптов и стилей (.js, .css) нужно открывать для индексации только роботам Google, но и для Яндекс: с 9.11.2015 Яндекс начал использовать js и css при индексации сайтов (сообщение в официальном блоге). Само собой, скрипты и таблицы в поиск не попадут, но это поможет роботу корректнее провести индексацию и отображение сайта в выдаче.
Анализ конкурентов — важнейший пункт в продвижении сайта. От того, как будет выполнен анализ и аудит, будет зависеть дальнейшее продвижение проекта. Не стоит забывать, что на данном этапе разрабатывается стратегия продвижения сайта.
Узнайте все преимущества продвижения сайтов на CMS от 1С.