Чтобы все нужные страницы попали в индекс поисковых систем и заняли позиции в топ-10 Яндекс и Google, необходимо обеспечить корректную индексацию страниц.
Все нужные страницы должны быть доступны для индексации, а служебные страницы, дубли, страницы с GET-параметрами и другие страницы, которые могут затруднять ранжирование сайта, должны быть исключены из индекса.
В этом вам поможет файл robots.txt.
Robots.txt – это стандарт исключений для поисковых роботов, который состоит из инструкций для поисковых роботов. Данные инструкции сообщают, какие страницы запрещены или разрешены для индексации. Это текстовый файл в кодировке UTF-8, который размещается в корневой папке сайта.
Сформировать файл robots.txt можно в любом текстовом редакторе.
Robots.txt позволяет управлять трафиком поисковых роботов. С помощью файла robots.txt можно исключить страницы из индекса, закрыв от индексации.
Файл robots.txt используется для исключения из индекса:
Также файл robots.txt может сообщать поисковым роботам, какие страницы необходимо проиндексировать. Открывающие директивы указываются в robots.txt в том случае, если какой либо нужный документ находится в закрытом разделе.
Например, в robots.txt закрыта от индексации служебная папка /birtix/. При этом в данной папке находятся файлы изображений, которые необходимо проиндексировать, например /bitrix/upload/image.png.
В данном случае robots.txt будет содержать следующие директивы:
User-agent: * Allow: /bitrix/upload/*.png Disallow: /birtix/
Robots.txt может содержать ссылку на xml-карту сайта. Это позволит поисковым роботам быстрее найти карту сайта и проиндексировать новые страницы, либо страницы, в которые были внесены изменения.
Также в файл robots.txt можно добавить директиву Clean-param, которая запрещает роботам Яндекса индексировать страницы с GET-параметрами (например, страницы с рекламными метками), при этом разрешает учитывать поведенческие факторы на данных страницах.
User-Agent - указывает имя поискового робота, для которого будут применяться следующие правила (например, Googlebot, Yandex).
После User-Agent необходимо поставить двоеточие, пробел и указать имя User-Agent.
Пример:
User-Agent: Googlebot
Disallow - закрывающая директива, которая указывает, какие страницы необходимо закрыть от индексации.
После Disallow необходимо поставить двоеточие, пробел и указать раздел или путь к странице, которую необходимо закрыть от индексации.
Пример:
Disallow: /bitrix/
Allow - разрешающая директива, которая указывает страницы, которые необходимо проиндексировать.
Allow необходимо размещать для тех страниц, которые находятся в закрытой от индексации папке.
После Allow необходимо поставить двоеточие, пробел и указать раздел или путь к странице, которую необходимо открыть для индексации. Директива Allow для конкретного файла или страницы должна быть длиннее, чем закрывающая директива Disallow, которая закрывает раздел, где находится документ или страница.
Например, в robots.txt указана закрывающая директива Disallow: /bitrix/. При этом в папке /bitrix/upload/ лежат png изображения, которые необходимо открыть для индексации.
Для того, чтобы открыть png изображения для индексации, необходимо разместить следующие директивы:
Disallow: /bitrix/ Allow: /bitrix/upload/*.png
В примере мы видим, что содержание открывающей директивы Allow длиннее, чем закрывающей директивы Disallow.
*: означает любую последовательность символов в пути страницы или любо обозначает всех User Agent. Символ * по умолчанию используется в конце строки, если не указывается иной символ.
Например:
User-Agent: * – директивы будут применяться для всех User-Agent.
Disallow: /*bitrix – закрывает все страницы, в URL которых содержится bitrix, вне зависимости от расположения.
Disallow: /bitrix* и Disallow: /bitrix – являются одинаковыми.
$ - обозначает конец строки и по умолчанию отменяет символ * в конце строки.
Например:
Disallow: /bitrix$
# - правило для размещения комментария. Данные правила игнорируются поисковыми роботами и служат в качестве подсказки для вебмастеров.
/ - указывает, что папка закрыта для сканирования.
Пример:
Disallow: /bitrix/ – закрыта вся папка /bitrix/. Соответственно все страницы, сложенные в эту папку, например /bitrix/upload/, будут закрыты от индексации
Disallow: / – закрывает весь сайт от индексации, так как / указывает на корневую папку сайта.
Sitemap - правило для указания ссылки на xml-карту сайта sitemap.xml.
Пример:
Sitemap: https://site.ru/sitemap.xml
Clean-param - директива для поисковых роботов Яндекса, которая сообщает о динамических параметрах в URL страницы, которые не меняют содержания страницы. Данная директива позволяет разрешить для индексации только основную страницу без дополнительных параметров в URL.
С помощью Clean-param можно закрыть страницы с рекламными метками (например, URL с utm-метками).
Пример:
Clean-param: utm_
Если необходимо закрыть несколько страницы с разными метками, необходимо перечислить метки через символ &.
Пример:
Clean-param: utm_& yclid_
Ранее в файле robots.txt размещали директивы Host - указывает на главное зеркало сайта, и Craw-delay - директива, устанавливающая минимальный период времени (в секундах) между посещениями страниц сайта поисковыми роботами. Данное правило использовалось в случаях, когда использовались слабые сервера, которые не выдерживали большой нагрузки. Сейчас такие сервера практически не используются.
Сейчас данные директивы считаются устаревшими и не используются при составлении robots.txt. При наличии в файле robots.txt таких директив можно сделать выводы, что файл давно не обновлялся.
Для составления файла robots.txt действуют общие правила:
User Agent – это идентификационная строка клиентского приложения, которая используется для приложений, поисковых роботов или пауков.
При посещении веб-страницы приложение отправляет веб-серверу текстовую строку с информацией о себе. Данная строка начинается с User-Agent и содержит название приложения, браузера, поискового робота или паука, и характеристики приложения или браузера (например, версию браузера).
В файле robots.txt User-Agent сообщает, для какого поискового робота предназначены приведенные ниже директивы.
Чаще всего в robots.txt указываются User-Agent
YandexBot – основной поисковый робот Яндекса, который занимается индексацией сайта.
YandexImages – робот, который индексирует изображения.
YandexMobileBot – собирает страницы для проверки их адаптивности под мобильные устройства.
YandexDirect – сканирует данные о материалах ресурсов-партнеров РСЯ.
YandexMetrika – поисковый робот сервиса Яндекс.Метрика.
YandexMarket – робот Яндекс.Маркета.
YandexCalendar – краулер Яндекс.Календаря.
YandexNews – робот, который индексирует Яндекс.Новости.
YandexScreenshotBot – делает скриншоты документов.
YandexMedia – робот, который индексирует мультимедийные данные.
YandexVideoParser – робот Яндекс.Видео.
YandexPagechecker – отображает микроразметку контента
YandexOntoDBAPI – паук объектного ответа, который скачивает изменяющиеся данные.
YandexAccessibilityBot – скачивает документы и проверяет доступность данных документов для пользователей.
YandexSearchShop – скачивает файлы формата Yandex Market Language, которые относятся к каталогам товаров.
YaDirectFetcher – собирает страницы с рекламой, с целью проверки доступности данных страниц для пользователей и анализа тематики.
YandexirectDyn – создает динамические баннеры.
Googlebot – основной поисковый робот Google, который индексирует страницы и проверяет их на адаптивность под мобильные устройства.
AdsBot-Google – анализирует рекламу и оценивает ее качество на страницах, оптимизированных под ПК.
AdsBot-Google-Mobile – анализирует рекламу и оценивает ее качество на страницах, оптимизированных под смартфоны.
AdsBot-Google-Mobile-Apps – анализирует рекламу в мобильных приложениях и оценивает ее качество.
Mediaparnters-Google – краулер маркетинговой сети Google AdSense.
APIs-Google – User-Agent пользователя APIs-Google, который проверяет push-уведомления.
Googlebot-Video – индексирует видеоконтент на страницах веб-сайтов.
Googlebot-Image – индексирует изображения.
Googlebot-News – сканирует страницы с новостями и добавляет их в Google Новости.
Ahrefs – SEO-инструмент для анализа ссылочной массы.
SEMrush – онлайн-сервис для оптимизации сайтов.
SEO Spider – SEO программа для сканирования сайта.
Serpstat – инструмент для развития SEO и рекламного контента.
Moz – робот SEO-инструмента, который используется для анализа сайта.
Чтобы удалить из поисковой выдачи Яндекса и Google весь сайт или отдельные разделы и страницы, необходимо закрыть их от индексации. Тогда страницы постепенно будут исключены из индекса и не будут отображаться в поиске.
Закрыть страницы от индексации можно с помощью файла robots.txt.
В поисковой выдаче должны находиться страницы с полезным для пользователей контентом. Страницы в поиске должны отвечать на вопросы пользователей.
Некоторые страницы сайта могут содержать служебную информацию, либо дублировать основные канонические страницы. Наличие таких страниц в индексе может негативно повлиять на ранжирование сайта.
От индексации необходимо закрывать следующие типы страниц:
Также необходимо закрывать от индексации тестовые страницы или тестовую версию сайта, служебные поддомены или зеркала сайта на других доменах.
Необходимо указать User-Agent, для которого закрываем сайт.
Чтобы закрыть сайт для всех User-Agent, указываем:
User-Agent: *
Если необходимо закрыть весь сайт только для одного или нескольких конкретных User-Agent, указываем имена роботов, например:
User-Agent: Yandexbot User-Agent: Googlebot
Добавляем закрывающую директиву Disallow и закрываем всю корневую папку:
User-Agent: *
Disallow: /
Если необходимо закрыть сайт для нескольких конкретных User-Agent, указываем всех User-Agent:
User-Agent: Googlebot
Disallow: /
User-Agent: Ahrefs
Disallow: /
Если необходимо закрыть сайт от индексации для всех User-Agent за исключением одного или нескольких User-Agent, необходимо добавить открывающую директиву Allow для User-Agent, для которого сайт будет доступен для индексации:
User-Agent: *
Disallow: /
User-Agent: Yandexbot
Allow: /
С помощью данной инструкции можно закрыть весь сайт от индексации и исключить все страницы сайта из поисковой выдачи.
Чтобы закрыть от индексации страницу или раздел сайта, необходимо следовать приведенным выше правилам, но вместо корневой папки, указать путь к странице или разделу, который необходимо закрыть.
Если необходимо закрыть весь раздел, указываем полностью папку данного раздела:
User-Agent: *
Disallow: /bitrix/
Таким образом мы закрываем от индексации всю папку /bitrix/ и все страницы, которые вложены в данный раздел, например папку /bitrix/upload/.
Директива без / в конце будет равнозначна директиве с /, например Disallow: /bitrix будет работать также, как и Disallow: /bitrix/. Соответственно аналогично работает символ *.
Все приведенные ниже директивы будут закрывать все страницы, вложенные в раздел /bitrix/:
Disallow: /bitrix
Disallow: /bitrix/
Disallow: /bitrix*
Disallow: /bitrix/*
Если закрыть для индексации необходимо только папку /bitrix/, необходимо добавить в конце пути символ $.
User-Agent: *
Disallow: /bitrix/$
В таком случае папка /bitrix/ будет закрыта, а все вложенные страницы в раздел /bitrix/ будут доступны для индексации, например страница /bitrix/upload/.
Если необходимо закрыть несколько разных страниц, которые содержат одинаковый параметр в URL, необходимо использовать символ * перед указанием общего параметра:
User-Agent: *
Disallow: /*sort=
Disallow: /*price=
Disallow: /*search=
Disallow: /*?q=
Таким образом можно закрыть страницы от индексации и исключить страницы их поисковой выдачи Яндекса и Google.
Clean-param — директива robots.txt, поддерживаемая роботами Яндекса. Clean-param позволяет сообщать о динамических параметрах, которые присутствуют в URL-адресах страниц (например, рекламные метки).
Директива Clean-param нужна для избежания возникновения дублей страниц. Наличие дублей страниц может негативно сказаться на индексации и ранжировании сайта в поисковых системах.
Кроме того дубли страниц будут расходовать краулинговый бюджет, что может замедлить индексацию других страниц сайта.
Например, на сайте присутствует страница категории каталога:
https://site.ru/catalog/category/
Данная страница https://site.ru/catalog/category/ может иметь рекламные метки, например:
https://site.ru/catalog/category/?utm_source=yandex
Такие метки позволяют отслеживать переходы по рекламе и упрощать аналитику. При этом страницы с рекламными метками являются дублями канонической страницы https://site.ru/catalog/category/.
С помощью Clean-param мы можем закрыть от индексации дубли страниц (страницы с рекламными метками), указав Clean-param со следующим содержанием:
Clean-param: utm_
Указание такой директивы запретит индексировать Яндексу все страницы сайта, которые содержат в URL utm-метки.
Сайт может иметь несколько рекламных источников, в связи с чем на разных страницах могут быть указаны различные метки в URL, например:
Чтобы закрыть страницы со всеми видами меток, необходимо указать в Clean-param все метки через символ &.
Пример:
Clean-param: utm_&k50id&cm_id&from&yclid&gclid&_openstat
В отличие от закрывающей директивы Disallow, Clean-param позволяет передавать основной канонической странице накопленные метрики и поведенческие факторы, о чем сообщается в Яндекс Справке.
В большинстве случаев использовать Clean-param не нужно, так как дубли страниц, сортировка и другие GET-параметры закрываются запрещающими директивами Disallow.
Директива Clean-param в robots.txt будет полезна сайтам с большим объемом рекламируемых страниц и рекламных источников.
Использование Clean-param позволит не индексировать страницы с рекламными метками, при этом поведенческие факторы с данных страниц будут учитываться Яндексом, о чем сообщает сам Яндекс в своей документации.
Для примера рассмотрим страницы разными UTM-метками:
https://www.site.ru/category/name-1/?utm_medium
https://www.site.ru/category/name-2/?utm_source
https://www.site.ru/category/name-3/?utm_campaign
Чтобы закрыть данные страницы от индексации, необходимо прописать следующую директиву:
Clean-param: utm_
Если URL страниц содержат разные рекламные метки, например:
https://www.site.ru/category/name-1/?yclid
https://www.site.ru/category/name-2/?gclid
https://www.site.ru/category/name-3/?utm_source
https://www.site.ru/category/name-4/?utm_campaign
Необходимо сформировать директиву Clean-param следующим образом:
Clean-param: utm_&gclid&yclid
Файл robots.txt позволит улучшить индексацию вашего сайта и исключить из индекса лишние страницы, которые могут негативно сказаться на ранжировании сайта.
Чтобы файл robots.txt эффективно решал свою задачу, необходимо придерживаться правил составления robots.txt и соблюдать синтаксис файла.
Ниже приведена пошаговая инструкция по составлению файла robots.txt.
В первой строке файла robots.txt необходимо указать User-Agent, для которого будут прописаны правила. Пропишите User-Agent: и добавьте название поискового робота.
Пример:
User-Agent: Googlebot
Если на правила в файле robots.txt необходимо реагировать всем роботам, укажите всех User-Agent с помощью символа *:
User-Agent: *
После указания User-Agent необходимо разместить запрещающие директивы Disallow.
Закройте от индексации страницы, которые не содержат полезной информации для пользователей, например:
Пример:
#сообщаем, что правило в robots.txt действуют для всех роботов User-agent: * #закрываем всю папку со служебными файлами Disallow: /bitrix/ #закрываем сортировку на всех страницах сайта Disallow: /*sort= #закрываем страницы результатов поиска с любым значением после = Disallow: /*search= #закрываем корзину Disallow: /basket/ #закрываем страницы оформления заказа Disallow: /order #закрываем личный кабинет Disallow: /lk/ #закрываем страницы фильтров в каталоге Disallow: /filter/
Если в ранее закрытых папках находятся страницы или файлы, которые необходимо проиндексировать, например изображения, PDF документы, необходимо добавить разрешающие директивы.
Также необходимо открыть для индексации скрипты и стили.
Пример:
Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css
Важно! Разрешающие директивы должны быть длиннее запрещающих.
User-agent: * #разрешаем индексировать изображения и PDF документы, которые лежат в закрытой папке /bitrix/upload/ Allow: /bitrix/upload/*.png Allow: /bitrix/upload/*.jpg Allow: /bitrix/upload/*.jpeg Allow: /bitrix/upload/*.pdf Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css #далее идут ранее составленные закрывающие директивы Disallow: /bitrix/ Disallow: /*sort= Disallow: /*search= Disallow: /basket/ Disallow: /order Disallow: /lk/ Disallow: /filter
В правилах Clean-param необходимо указать динамические параметры, которые не влияют на содержание страницы, например, рекламные метки.
Пример:
Clean-param: utm_&k50id&cm_id&from&yclid&gclid&_openstat
Правило Clean-param действует только для Яндекса, в связи с этим необходимо указать User-Agent для которого предназначено данное правило:
User-agent: * Allow: /bitrix/upload/*.png Allow: /bitrix/upload/*.jpg Allow: /bitrix/upload/*.jpeg Allow: /bitrix/upload/*.pdf Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css Disallow: /bitrix/ Disallow: /*sort= Disallow: /*search= Disallow: /basket/ Disallow: /order Disallow: /lk/ Disallow: /filter/ User-agent: Yandex Allow: /bitrix/upload/*.png Allow: /bitrix/upload/*.jpg Allow: /bitrix/upload/*.jpeg Allow: /bitrix/upload/*.pdf Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css Disallow: /bitrix/ Disallow: /*sort= Disallow: /*search= Disallow: /basket/ Disallow: /order Disallow: /lk/ Disallow: /filter/ Clean-param: utm_&k50id&cm_id&from&yclid&gclid&_openstat
Правило Clean-param действует для поисковой системы Яндекс.
Чтобы страницы с динамическими параметрами не индексировались Google, необходимо закрыть от индексации страницы с метками, указав запрещающие директивы для всех остальных User-Agen.
Пример:
User-agent: * Allow: /bitrix/upload/*.png Allow: /bitrix/upload/*.jpg Allow: /bitrix/upload/*.jpeg Allow: /bitrix/upload/*.pdf Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css Disallow: /bitrix/ Disallow: /*sort= Disallow: /*search= Disallow: /basket/ Disallow: /order Disallow: /lk/ Disallow: /filter/ Disallow: /*utm_ Disallow: /*k50id Disallow: /*cm_id Disallow: /*from Disallow: /*yclid Disallow: /*gclid Disallow: /*_openstat User-agent: Yandex Allow: /bitrix/upload/*.png Allow: /bitrix/upload/*.jpg Allow: /bitrix/upload/*.jpeg Allow: /bitrix/upload/*.pdf Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css Disallow: /bitrix/ Disallow: /*sort= Disallow: /*search= Disallow: /basket/ Disallow: /order Disallow: /lk/ Disallow: /filter/ Clean-param: utm_&k50id&cm_id&from&yclid&gclid&_openstat
В файле robots.txt можно указать путь к xml-карте сайта. Это позволит ускорить индексацию новых страниц и страниц, на которые были внесены изменения.
User-agent: * Allow: /bitrix/upload/*.png Allow: /bitrix/upload/*.jpg Allow: /bitrix/upload/*.jpeg Allow: /bitrix/upload/*.pdf Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css Disallow: /bitrix/ Disallow: /*sort= Disallow: /*search= Disallow: /basket/ Disallow: /order Disallow: /lk/ Disallow: /filter/ Disallow: /*utm_ Disallow: /*k50id Disallow: /*cm_id Disallow: /*from Disallow: /*yclid Disallow: /*gclid Disallow: /*_openstat Sitemap: https://site.ru/sitemap.xml User-agent: Yandex Allow: /bitrix/upload/*.png Allow: /bitrix/upload/*.jpg Allow: /bitrix/upload/*.jpeg Allow: /bitrix/upload/*.pdf Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css Disallow: /bitrix/ Disallow: /*sort= Disallow: /*search= Disallow: /basket/ Disallow: /order Disallow: /lk/ Disallow: /filter/ Clean-param: utm_&k50id&cm_id&from&yclid&gclid&_openstat Sitemap: https://site.ru/sitemap.xml
Техническую проверку сайта рекомендуется начинать проверять именно с файла robots.txt.
Настройка индексации сайта – один из важнейших этапов в SEO-продвижении сайта. С помощью правильной настройки файла robots.txt можно управлять индексацией сайта и исключить из индекса страницы, которые могут негативно сказаться на ранжировании сайта.
Файл robots.txt позволяет управлять индексацией сайта. Правильно составленный robots.txt позволит убрать из индекса лишние страницы, которые могут помещать ранжированию сайта.
При этом поисковые системы Яндекс и Google предъявляют разные требования к составлению файла robots.txt.
В связи с этим необходимо проверять robots.txt на соответствия требования поисковых систем отдельно для Яндекса и Google.
Если несколько инструментов для проверки robots.txt.
Для проверки robots.txt необходимо авторизоваться в Яндексе и открыть инструмент для проверки robots.txt.
Введите проверяемый сайт и добавьте ваш вариант robots.txt в поле “Исходный код файла robots.txt”. Сервис покажет результаты проверки и сообщит о наличии или отсутствии ошибок.
Важно провести проверку доступности основных продвигаемых типов страниц.
Добавьте в поле “Разрешены ли URL” ссылки на основные продвигаемые страницы и страницы, которые должны быть закрыты от индексации. Сервис покажет доступность страницы. Если нужные страницы не доступны для индексации или наоборот, служебные страницы не закрыты – проверьте корректность составления директив файла robots.txt
В старой версии Google Search Console был инструмент для проверки файла robots.txt. Однако в текущей версии панели вебмастера в Google такой инструмент отсутствует.
Вероятнее всего это связано с тем, что файл robots.txt не работает в поисковой системе Google для закрытия.
Чтобы закрыть страницы от индексации в Google, необходимо прописать на странице тег noindex, либо закрыть страницу обязательной авторизацией, о чем сообщает сам Google в своей документации.
Для исключения страницы из индекса Google можно использовать инструмент “Удаления” в Google Search Console.
При наличии ошибок в файле robots.txt ненужные страницы могут попасть в индекс поисковых систем, либо наоборот - важные страницы не будут проиндексированы. Это может негативно сказаться на ранжировании сайта.
Разберем частые ошибки файла robots.txt.
Файл robots.txt должен находится в корневой папке сайта и быть доступным по адресу корневой папки и /robots.txt.
Пример:
Если файл robots.txt будет размещен по другому адресу, поисковые системы не будут учитывать содержимое файла.
Закрытие от индексации скриптов и стилей может вызвать проблемы, часть контента может не проиндексироваться, либо проиндексироваться не в полном объеме.
Это негативно скажется на релевантности страницы и, соответственно, ранжировании сайта в поисковых системах.
Если в robots.txt закрыты служебные папки, в которых содержатся стили и скрипты, необходимо отдельно прописать открывающие директивы для скриптов и стилей.
Пример:
Allow: /bitrix/upload/*.js Allow: /bitrix/upload/*.css Disallow: /bitrix/
Отсутствие sitemap.xml в robots.txt не является ошибкой – robots.txt будет корректно выполнять свои функции без ссылки на карту сайта. Однако наличие карты сайта в robots.txt может ускорить индексацию сайта.
Если директивы или User-Agent прописаны в robots.txt с ошибкой, поисковые роботы проигнорируют данные директивы, либо весь robots.txt (если ошибка в указании User-Agent).
Перед размещение файла robots.txt на сайте необходимо проверить файл на наличие ошибок и проанализировать, все ли необходимые страницы индексируются или не индексируется в соответствии с указанными правилами.