Robots.txt - самый полный разбор файла

Роботы захватили поисковый мир
дата 26.10.2020 2020-10-30T21:05:55+03:00 дата 8 мин дата просмотров: 7150 дата сложность: легкая

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

Закрыть и открыть сайт

Самые важные директивы robots.txt — это Disallow и Allow. С помощью них можно закрыть сайт (например, на стадии разработки) и открыть его (после разработки и переноса на «боевой» домен).

Закрыть от индексации сайт

Запрещаем индексацию сайта всем роботам:

User-agent: *
Disallow: /

Открыть к индексации сайт

Разрешаем всем роботам индексацию сайта:

User-agent: *
Allow: /

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

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

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

User-agent – самая первая директива, которая позволяет обратиться к роботам поисковых систем. Рядом с ней указывается название поисковой системы или * (звездочка).

* (звездочка) в директиве User-agent позволяет обращаться ко всем поисковым системам сразу.

Система Запись в User-agent Описание
Google GoogleBot Робот Google
Яндекс YandexBot Основной робот Яндекса
Яндекс YandexMobileBot Мобильный робот Яндекса
Яндекс Yandex Робот, который будет использовать все другие боты от Яндекса (основной и мобильый) – используется чаще всего.
Bing BingBot Основной робот от поисковой системы bing.com
Mail.ru Mail.ru Робот от поисковой системы mail
Rambler StackRambler Робот от поисковой системы rambler

В большинстве своих проектов нам достаточно лишь:

User-agent: Yandex
User-agent: GoogleBot
#Для всех остальных поисковиков используем
User-agent: *

Директива Disallow

Директива Disallow – означает запрет к индексации страницы, раздела или файла.

Пример:

#запрещает индексировать весь сайт
Disallow: /
#запрещает индексировать все страницы, в url которых
содержится visit
Disallow: /*visit

* (звездочка) означает то, что перед нашим названием файла (папки) может стоять все, что угодно.

Директива Allow

Директива Allow – означает допуск к индексации страницы, раздела или файла.

Как открыть к индексации страницу или раздел:

Allow: /uploads

На данном примере мы открыли раздел /uploads.

Как открыть файл из закрытого раздела:

Disallow: /*bitrix
Allow: /*bitrix*jpg

В этом примере мы запрещаем индексировать все страницы, в которых содержится слово bitrix, но разрешаем индексировать страницы, в которых есть и bitrix и jpg, однако все другие страницы со словом bitrix в url адресе, которые не содержат символов jpg будут закрыты.

Директива Host

Директива Host – ранее в ней указывалось главное зеркало, но сейчас данная директива не используется поисковыми системами и ее можно не прописывать в файле robots.txt, т.к. сейчас все роботы смотрят на корректную настройку 301 редиректа, а не на то, что написано в директиве host. Информацию по этому поводу можно прочитать в статье Яндекса. Если вы добавите данную директиву в свой файл robots.txt, то ничего страшного от этого не произойдет, главное не забудьте настроить правильно зеркала.

Директива Sitemap

Sitemap – директива, служащая для указания на xml карту сайта, которая также обязательно должна быть на любом сайте (даже одностраничном). В карте сайта указывается список страниц, которые должны быть проиндексированы поисковой системой.

Директива указывается в самом конце файла robots.txt в виде url-адреса до файла карты сайта .xml

Sitemap: https://example.com/sitemap.xml

Спецсимволы *, $ в robots.txt

В файле robots.txt при указании путей можно использовать символы * и $ , задавая определенные регулярные выражения.

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

$ данный спецсимвол служит для отмены * на конце.

Примеры:

Disallow /*visit/

Для данного правила:

example.com/visit/ — закрыт

example.com/visit/search/ — закрыт

example.com/visit/search/laptop/ — закрыт

Disallow /*visit/$

example.com/visit/ — закрыт

example.com/visit/search/ — открыт

example.com/visit/search/laptop/ — открыт

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

Чтобы проверить правильное заполнение файла robots.txt можно воспользоваться сервисом Яндекс.Webmaster, в который уже должен быть добавлен ваш сайт.

На странице Инструменты -> Анализ robots.txt

Проверка robots.txt в Яндекс Вебмастер

Внизу есть поле для проверки страницы (доступна она для индексации или нет).

Вы можете скопировать интересующий вас url адрес вашего сайта в данную форму и проверить – доступна страница к индексации или нет.

Например, для одного нашего туристического проекта на кириллическом домене «рф» проскакивали адреса на латинице вида cashback.html на конце (это была особенность разработки и системы управления). Эти url-адреса нужно было, во-первых закрыть от индексации, во-вторых настроить 301 редирект.

Мы добавили:

Disallow: /*cashback.html

и вот, что получилось:

Разрешены ли url

url адрес с cashback.html выдал ошибку (то, что нам и нужно было), а url-адрес с обычным url – проверку прошел. Всего-лишь одной небольшой командой мы избавились от проблемы. И в идеальном случае нужно было бы доработать систему и отфильтровать адреса (эта задача поставлена на будущее), но на данный момент мы отделались «малой кровью», настроив корректно редиректы и установив запрет к индексации.

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

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

На своем примере — мы удалили строчку Disallow: /*cashback.html

Удалим запись

и вот, что у нас получилось:

Результат с удаленной строчкой Disallow

Все страницы доступны к индексации.

Данные методы тестирования применимы как к небольшим, так и к крупным проектам. Особенно, если есть мультиязычная версия и добавлено много правил.

Например, нам нужно, чтобы не индексировалась страница /travelguides/, но индексировалась travelguides/austria/. В этом случае мы создаем такое правило:

Disallow: /*travelguides/$

Кириллица в файле Robots

ВАЖНО ДЛЯ ВСЕХ ДОМЕНОВ .РФ – все страницы на кириллице прописываются в robots.txt в Punycode (паникод), то есть теми самыми «иероглифами», которые сложно разобрать. Такая уж особенность. Чтобы сделать пани-код можно воспользоваться онлайн-генератором.

Что нужно обязательно закрывать в robots.txt

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

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

Например, мы видим, что в платном канале используются url с хвостами, где содержится параметр param=id

example.com/page/?param=id _tm_mebel_qw2_r1_1455114
example.com/page/tm_mebel_qw2_r1_param=id_r1_1455156

Мы не будем закрывать каждую страницу от индексации, а используем маску:

Disallow: /*param=id

то есть мы закрыли тем самым от индексации станицы, которые содержат param=id , т.к. это является дублями.

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

Например, закрываем страницу с выводами результатов поиска:

example.com/search/?c=category_video

Для данного примера конструкция закрытия от индексации будет:

Disallow: /*search

тем самым мы закрыли страницу результатов поиска и все дополнительные «хвосты», связанные с ней.

Также, необходимо закрыть «служебные» страницы, например, страницу с корзиной.

Иностранная версия сайта

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

Основатель QPstudio.ru

Поделиться статьей:

вверх

Настроим корректный robots.txt для вашего сайта

Эта мелочь может очень помочь продвижению

Оставть заявку

Получить консультацию

    telegramviberwhatsapp
    telegramviberwhatsapp

    Оставить заявку

      telegramviberwhatsapp
      telegramviberwhatsapp

      Оставить заявку

        telegramviberwhatsapp
        telegramviberwhatsapp

        Made on
        Tilda