Содержание

правила обработки директив, какие директивы не используются в Google и зачем нужны Disallow и Crawl-delay — Пиксель Тулс

1 сентября 2019 года Google прекратит поддержку нескольких директив в robots.txt. В список попали: noindex, crawl-delay и nofollow. Вместо них рекомендуется использовать:

  • Мета-тег noindex, как наиболее эффективный способ удалить страницу из индекса.

  • 404 и 410 коды ответа сервера. В ряде случаев, 410 отрабатывает значительно быстрей для удаления URL из индекса.

  • Защита паролем. Страницы, требующие авторизации, также обычно удаляются из индекса (важно — именно страницы, полностью скрытые под логином, а не часть контента).

  • Временное удаление страницы из индекса с помощью инструмента в Search Console.

  • Disallow в robots.txt.

Тем не менее, robots.txt по-прежнему остаётся одним из главных файлов для SEO-специалиста. Давайте вспомним самые полезные директивы от простых, до менее очевидных.

robots.txt

Это простой текстовый файл, который содержит инструкции для поисковых краулеров — какие страницы сайта не следует посещать, где лежит наш Sitemap.xml и для каких поисковых роботов распространяются правила.

Файл размещается в корневой директории сайта. Например:

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

Действующие правила robots.txt

User-Agent

У каждой поисковой системы есть свои «агенты пользователя». По сути, это имя краулера, которое помогает дать определённые указания конкретному ему.

Если брать шире, то User-Agent — клиентское приложение на стороне поисковой системы, в некотором смысле имитирующее браузер или, например, мобильное устройство.

Примеры:

  • User-agent: * — символ астериск используются для обозначения сразу же всех краулеров.

  • User-agent: Yandex — основной краулер Яндекс-поиска.

  • User-agent: Google-Image — робот поиска Google по картинкам.

  • User-agent: AhrefsBot — краулер сервиса Ahrefs.

Важно: если в файле указаны правила для конкретных User-Agent, то роботы будут следовать только своим инструкциям, игнорируя общие правила.

В примере ниже краулер DuckDukcGo сможет сканировать папки сайта /api/ и /tmp/, несмотря на астериск («звёздочку»), отвечающий за инструкции всем роботам.


    User-agent: *
    Disallow: /tmp/
    Disallow: /api/

    User-agent: DuckDuckBot
    Disallow: /duckhunt/

Disallow

Директива, которая позволяет блокировать от индексации полностью весь сайт или определённые разделы.

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


    User-agent: *

    # Закрываем раздел /cms и все файлы внутри

    Disallow: /cms

    # Закрываем папку /images/resized/ (сами изображения разрешены к сканированию)

    Disallow: /api/resized/

Упростить инструкции помогают операторы:

  • * — любая последовательность символов в URL. По умолчанию к концу каждого правила, описанного в файле robots.txt, приписывается спецсимвол *.

  • $ — символ в конце URL-адреса, он используется чтобы отменить использование * на конце правила.


    User-agent: *

    # Закрываем URL, начинающиеся с /photo после домена. Например:
    #     /photos
    #     /photo/overview

    Disallow: /photo

    # Закрываем все URL, начинающиеся с /blog/ после домена и заканчивающиеся /stats/

    Disallow: /blog/*/stats$

Важно: в robots.txt не нужно закрывать JS и CSS-файлы, они понадобятся поисковым роботом для правильного отображения (рендеринга) контента.

Allow

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


    User-agent: *

    # Блокируем весь раздел /admin

    Disallow: /admin

    # Кроме файла /admin/css/style.css

    Allow: /admin/css/style.css

    # Открываем все файлы в папке /admin/js. Например:
    #     /admin/js/global.js
    #     /admin/js/ajax/update.js

    Allow: /admin/js/

Также Allow можно использовать для отдельных User-Agent.


    # Запрещаем доступ к сайту всем роботам

    User-agent: *
    Disallow: /

    # Кроме краулера Яндекса

    User-agent: Yandex
    Allow: /

Crawl-delay

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

Позволяет замедлить сканирование, если сервер бывает перегружен. Устанавливает интервал времени для обхода страниц в секундах (для Яндекса). Чем выше значение, тем медленнее краулер ходит по сайту.


    User-agent: *
    Crawl-delay: 5

Несмотря на то, что Googlebot игнорирует подобные правила, настроить скорость сканирования можно в Google Search Console проекта.

Интересно, что китайский Baidu также не обращает внимание на Crawl-delay в robots.txt, а Bing воспринимает команду как «временное окно», в рамках которого BingBot будет сканировать сайт только один раз.

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

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

Sitemap

Одно из ключевых применений robots.txt в SEO — указание на расположение карты сайты. Обратите внимание, используется полный URL-адрес (их может быть несколько).


    Sitemap: https://www.example.com/sitemap.xml
    Sitemap: https://www.example.com/blog-sitemap.xml

Нужно иметь в виду:

  • Директива Sitemap указывается с заглавной S.

  • Sitemap не зависит от инструкций User-Agent.

  • Нельзя использовать относительный адрес карты сайта, только полный URL.

  • Файл XML-карты сайта должен располагаться на том же домене.

Также убедитесь, что ссылка возвращает статус 200 OK без редиректов. Проверить можно с помощью инструмента, определяющего ответ сервера или анализа XML-карты сайта.

Типичный robots.txt

Ниже представлены простые и распространенные шаблоны команд для поисковых роботов.

Разрешить полный доступ

Обратите внимание, правило для Disallow в этом случае не заполняется.

Полная блокировка доступа к хосту


    User-agent: *
    Disallow: /

Запрет конкретного раздела сайта


    User-agent: *
    Disallow: /admin/

Запрет сканирования определенного файла


    User-agent: *
    Disallow: /admin/my-embarrassing-photo.png

Распространенная ошибка

Установка индивидуальных правил для User-Agent без дублирования инструкций Disallow.

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

В примере ниже — слегка измененный robots.txt сайта IMDB. Общие правила Disallow не будут распространяться на бот ScoutJet. А вот Crawl-delay, напротив, установлена только для него.


    # отредактированная версия robots.txt сайта IMDB

    #
    # Задержка интервала сканирования для ScouJet
    #
    
    User-agent:ScouJet
    Crawl-delay: 3
    #
    #

    #
    # Все остальные
    #

    User-agent: *
    Disallow: /tvschedule
    Disallow: /ActorSearch
    Disallow: /ActressSearch
    Disallow: /AddRecommendation
    Disallow: /ads/
    Disallow: /AlternateVersions
    Disallow: /AName
    Disallow: /Awards
    Disallow: /BAgent
    Disallow: /Ballot/

    #
    #
    Sitemap: https://www.imdb.com/sitemap_US_index.xml.gz

Противоречия директив

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


    User-agent: *

    # /admin/js/global.js разрешён к сканированию
    # /admin/js/update.js по-прежнему запрещён

    Disallow: /admin
    Allow: /admin/js/global.js

Может показаться, что файл /admin/js/global.js попадает под правило блокировки содержащего его раздела Disallow: /admin/. Тем не менее, он будет доступен для сканирования, в отличие от всех остальных файлов в каталоге.

Список распространенных User-Agent

User-Agent #
Google  
Googlebot Основной краулер Google
Googlebot-Image Робот поиска по картинкам
Bing  
Bingbot Основной краулер Bing
MSNBot Старый, но всё ещё использующийся краулер Bing
MSNBot-Media Краулер Bing для изображений
BingPreview Отдельный краулер Bing для Snapshot-изображений
Яндекс  
YandexBot Основной индексирующий бот Яндекса
YandexImages Бот Яндеса для поиска по изображениям
Baidu  
Baiduspider Главный поисковый робот Baidu
Baiduspider-image Бот Baidu для картинок
Applebot Краулер для Apple. Используется для Siri поиска и Spotlight
SEO-инструменты  
AhrefsBot Краулер сервиса Ahrefs
MJ12Bot Краулер сервиса Majestic
rogerbot Краулер сервиса MOZ
PixelTools Краулер «Пиксель Тулс»
Другое  
DuckDuckBot Бот поисковой системы DuckDuckGo

Советы по использованию операторов

Как упоминалось выше, широко применяются два оператора: * и $. С их помощью можно:

1. Заблокировать определённые типы файлов.


    User-agent: *

    # Блокируем любые файлы с расширением .json

    Disallow: /*.json$

В примере выше астериск * указывает на любые символы в названии файла, а оператор $ гарантирует, что расширение .json находится точно в конце адреса, и правило не затрагивает страницы вроде /locations.json.html (вдруг есть и такие).

2. Заблокировать URL с параметром ?, после которого следуют GET-запросы (метод передачи данных от клиента серверу).

Этот приём активно используется, если у проекта настроено ЧПУ для всех страниц и документы с GET-параметрами точно являются дублями.


    User-agent: *

    # Блокируем любые URL, содержащие символ ?

    Disallow: /*?

Заблокировать результаты поиска, но не саму страницу поиска.


    User-agent: *

    # Блокируем страницу результатов поиска

    Disallow: /search.php?query=*

Имеет ли значение регистр?

Определённо да. При указании правил Disallow / Allow, URL адреса могут быть относительными, но обязаны сохранять регистр.


    User-agent: *

    # /users разрешены для сканирования, поскольку регистр разный

    Disallow: /Users

Но сами директивы могут объявляться как с заглавной, так и с прописной: Disallow: или disallow: — без разницы. Исключение — Sitemap: всегда указывается с заглавной.

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

Есть множество сервисов проверки корректности файлов robots.txt, но, пожалуй, самые надёжные: Google Search Console и Яндекс.Вебмастер.

Для мониторинга изменений, как всегда, незаменим «Модуль ведения проектов»:

  • Контроль индексации на вкладке «Аудит» — динамика сканирования страниц сайта в Яндексе и Google.

  • Контроль изменений в файле robots.txt. Теперь точно не упустите, если кто-то из коллег закрыл сайт от индексации (или наоборот).

Держите свои robots.txt в порядке, и пусть в индекс попадает только необходимое!

Robots.txt — Как создать правильный robots.txt

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

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

Как влияет robots.txt на индексацию сайта

Поисковые роботы будут индексировать ваш сайт независимо от наличия файла robots.txt. Если же такой файл существует, то роботы могут руководствоваться правилами, которые в этом файле прописываются. При этом некоторые роботы могут игнорировать те или иные правила, либо некоторые правила могут быть специфичными только для некоторых ботов. В частности, GoogleBot не использует директиву Host и Crawl-Delay, YandexNews с недавних пор стал игнорировать директиву Crawl-Delay, а YandexDirect и YandexVideoParser игнорируют более общие директивы в роботсе (но руководствуются теми, которые указаны специально для них).

Подробнее об исключениях:
Исключения Яндекса
Стандарт исключений для роботов (Википедия)

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

Пример работы robots.txt

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

Для большинства роботов также желательно отключить индексацию всех JS и CSS. Но для GoogleBot и Yandex такие файлы нужно оставить для индексирования, так как они используются поисковыми системами для анализа удобства сайта и его ранжирования (пруф Google, пруф Яндекс).

Директивы robots.txt

Директивы — это правила для роботов. Есть спецификация W3C от 30 января 1994 года и расширенный стандарт от 1996 года. Однако не все поисковые системы и роботы поддерживают те или иные директивы. В связи с этим для нас полезнее будет знать не стандарт, а то, как руководствуются теми или иными директивы основные роботы.

Давайте рассмотрим по порядку.

User-agent

Это самая главная директива, определяющая для каких роботов далее следуют правила.

Для всех роботов:
User-agent: *

Для конкретного бота:
User-agent: GoogleBot

Обратите внимание, что в robots.txt не важен регистр символов. Т.е. юзер-агент для гугла можно с таким же успехом записать соледующим образом:
user-agent: googlebot

Ниже приведена таблица основных юзер-агентов различных поисковых систем.

БотФункция
Google
Googlebotосновной индексирующий робот Google
Googlebot-NewsGoogle Новости
Googlebot-ImageGoogle Картинки
Googlebot-Videoвидео
Mediapartners-GoogleGoogle AdSense, Google Mobile AdSense
MediapartnersGoogle 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
Rambler
StackRamblerРанее основной индексирующий робот Rambler. Однако с 23.06.11 Rambler перестает поддерживать собственную поисковую систему и теперь использует на своих сервисах технологию Яндекса. Более не актуально.

Disallow и Allow

Disallow закрывает от индексирования страницы и разделы сайта.
Allow принудительно открывает для индексирования страницы и разделы сайта.

Но здесь не все так просто.

Во-первых, нужно знать дополнительные операторы и понимать, как они используются — это *, $ и #.

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

Примеры использования:

Disallow: *?s=
Disallow: /category/$

Следующие ссылки будут закрыты от индексации:
http://site.ru/?s=
http://site.ru/?s=keyword
http://site.ru/page/?s=keyword
http://site.ru/category/

Следующие ссылки будут открыты для индексации:
http://site.ru/category/cat1/
http://site.ru/category-folder/

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

Allow: *.css
Disallow: /template/

http://site.ru/template/ — закрыто от индексирования
http://site.ru/template/style.css — закрыто от индексирования
http://site.ru/style.css — открыто для индексирования
http://site.ru/theme/style.css — открыто для индексирования

Если нужно, чтобы все файлы .css были открыты для индексирования придется это дополнительно прописать для каждой из закрытых папок. В нашем случае:

Allow: *.css
Allow: /template/*.css
Disallow: /template/

Повторюсь, порядок директив не важен.

Sitemap

Директива для указания пути к XML-файлу Sitemap. URL-адрес прописывается так же, как в адресной строке.

Например,

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

Директива Sitemap указывается в любом месте файла robots.txt без привязки к конкретному user-agent. Можно указать несколько правил Sitemap.

Host

Директива для указания главного зеркала сайта (в большинстве случаев: с www или без www). Обратите внимание, что главное зеркало указывается БЕЗ http://, но С https://. Также если необходимо, то указывается порт.
Директива поддерживается только ботами Яндекса и Mail.Ru. Другими роботами, в частности GoogleBot, команда не будет учтена. Host прописывается только один раз!

Пример 1:
Host: site.ru

Пример 2:
Host: https://site.ru

Crawl-delay

Директива для установления интервала времени между скачиванием роботом страниц сайта. Поддерживается роботами Яндекса, Mail.Ru, Bing, Yahoo. Значение может устанавливаться в целых или дробных единицах (разделитель — точка), время в секундах.

Пример 1:
Crawl-delay: 3

Пример 2:
Crawl-delay: 0.5

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

Чем больше значение, тем меньше страниц робот загрузит за одну сессию. Оптимальное значение определяется индивидуально для каждого сайта. Лучше начинать с не очень больших значений — 0.1, 0.2, 0.5 — и постепенно их увеличивать. Для роботов поисковых систем, имеющих меньшее значение для результатов продвижения, таких как Mail.Ru, Bing и Yahoo можно изначально установить бо́льшие значения, чем для роботов Яндекса.

Clean-param

Это правило сообщает краулеру, что URL-адреса с указанными параметрами не нужно индексировать. Для правила указывается два аргумента: параметр и URL раздела. Директива поддерживается Яндексом.

Пример 1:

Clean-param: author_id http://site.ru/articles/

http://site.ru/articles/?author_id=267539 — индексироваться не будет

Пример 2:

Clean-param: author_id&sid http://site.ru/articles/

http://site.ru/articles/?author_id=267539&sid=0995823627 — индексироваться не будет

Яндекс также рекомендует использовать эту директиву для того, чтобы не учитывались UTM-метки и идентификаторы сессий. Пример:

Clean-Param: utm_source&utm_medium&utm_campaign

Другие параметры

В расширенной спецификации robots.txt можно найти еще параметры Request-rate и Visit-time. Однако они на данный момент не поддерживаются ведущими поисковыми системами.

Смысл директив:
Request-rate: 1/5 — загружать не более одной страницы за пять секунд
Visit-time: 0600-0845 — загружать страницы только в промежуток с 6 утра до 8:45 по Гринвичу.

Закрывающий robots.txt

Если вам нужно настроить, чтобы ваш сайт НЕ индексировался поисковыми роботами, то вам нужно прописать следующие директивы:

User-agent: *
Disallow: /

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

Правильная настройка robots.txt

правильноДля России и стран СНГ, где доля Яндекса ощутима, следует прописывать директивы для всех роботов и отдельно для Яндекса и Google.

Чтобы правильно настроить robots.txt воспользуйтесь следующим алгоритмом:

  1. Закройте от индексирования админку сайта
  2. Закройте от индексирования личный кабинет, авторизацию, регистрацию
  3. Закройте от индексирования корзину, формы заказа, данные по доставке и заказам
  4. Закройте от индексирования ajax, json-скрипты
  5. Закройте от индексирования папку cgi
  6. Закройте от индексирования плагины, темы оформления, js, css для всех роботов, кроме Яндекса и Google
  7. Закройте от индексирования функционал поиска
  8. Закройте от индексирования служебные разделы, которые не несут никакой ценности для сайта в поиске (ошибка 404, список авторов)
  9. Закройте от индексирования технические дубли страниц, а также страницы, на которых весь контент в том или ином виде продублирован с других страниц (календари, архивы, RSS)
  10. Закройте от индексирования страницы с параметрами фильтров, сортировки, сравнения
  11. Закройте от индексирования страницы с параметрами UTM-меток и сессий
  12. Проверьте, что проиндексировано Яндексом и Google с помощью параметра «site:» (в поисковой строке наберите «site:site.ru»). Если в поиске присутствуют страницы, которые также нужно закрыть от индексации, добавьте их в robots.txt
  13. Укажите Sitemap и Host
  14. По необходимости пропишите Crawl-Delay и Clean-Param
  15. Проверьте корректность robots.txt через инструменты Google и Яндекса (описано ниже)
  16. Через 2 недели перепроверьте, появились ли в поисковой выдаче новые страницы, которые не должны индексироваться. В случае необходимости повторить выше перечисленные шаги.

Пример robots.txt

# Пример файла robots.txt для настройки гипотетического сайта https://site.ru
User-agent: *
Disallow: /admin/
Disallow: /plugins/
Disallow: /search/
Disallow: /cart/
Disallow: */?s=
Disallow: *sort=
Disallow: *view=
Disallow: *utm=
Crawl-Delay: 5

User-agent: GoogleBot
Disallow: /admin/
Disallow: /plugins/
Disallow: /search/
Disallow: /cart/
Disallow: */?s=
Disallow: *sort=
Disallow: *view=
Disallow: *utm=
Allow: /plugins/*.css
Allow: /plugins/*.js
Allow: /plugins/*.png
Allow: /plugins/*.jpg
Allow: /plugins/*.gif

User-agent: Yandex
Disallow: /admin/
Disallow: /plugins/
Disallow: /search/
Disallow: /cart/
Disallow: */?s=
Disallow: *sort=
Disallow: *view=
Allow: /plugins/*.css
Allow: /plugins/*.js
Allow: /plugins/*.png
Allow: /plugins/*.jpg
Allow: /plugins/*.gif
Clean-Param: utm_source&utm_medium&utm_campaign
Crawl-Delay: 0.5

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

Как добавить и где находится robots.txt

После того как вы создали файл robots.txt, его необходимо разместить на вашем сайте по адресу site.ru/robots.txt — т.е. в корневом каталоге. Поисковый робот всегда обращается к файлу по URL /robots.txt

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

Проверка robots.txt осуществляется по следующим ссылкам:

Типичные ошибки в robots.txt

ошибкаВ конце статьи приведу несколько типичных ошибок файла robots.txt

  • robots.txt отсутствует
  • в robots.txt сайт закрыт от индексирования (Disallow: /)
  • в файле присутствуют лишь самые основные директивы, нет детальной проработки файла
  • в файле не закрыты от индексирования страницы с UTM-метками и идентификаторами сессий
  • в файле указаны только директивы
    Allow: *.css
    Allow: *.js
    Allow: *.png
    Allow: *.jpg
    Allow: *.gif
    при этом файлы css, js, png, jpg, gif закрыты другими директивами в ряде директорий
  • директива Host прописана несколько раз
  • в Host не указан протокол https
  • путь к Sitemap указан неверно, либо указан неверный протокол или зеркало сайта

P.S.

Если у вас есть дополнения к статье или вопросы, пишите ниже в комментариях.
Если у вас сайт на CMS WordPress, вам будет полезна статья «Как настроить правильный robots.txt для WordPress».

P.S.2

Полезное видео от Яндекса (Внимание! Некоторые рекомендации подходят только для Яндекса).

что означает и как правильно использовать

В данной статье речь пойдет о самых популярных директивах Dissalow и Allow в файле robots.txt.

Disallow

Disallow – директива, запрещающая индексирование отдельных страниц, групп страниц, их отдельных файлов и разделов сайта(папок). Это наиболее часто используемая директива, которая исключает из индекса:

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

Примеры директивы Disallow в robots.txt:  

# запрет на индексацию всего веб-ресурса
User-agent: Yandex
Disallow: /
# запрет на обход страниц, адрес которых начинается с /category
User-agent: Yandex
Disallow: /category
# запрет на обход страниц, URL которых содержит параметры
User-agent: Yandex
Disallow: /page?
# запрет на индексацию всего раздела wp-admin
User-agent: Yandex
Disallow: /wp-admin
# запрет на индексацию подраздела plugins
User-agent: Yandex
Disallow: /wp-content/plugins
# запрет на индексацию конкретного изображения в папке img
User-agent: Yandex
Disallow: /img/images.jpg
# запрет индексации конкретного PDF документа
User-agent: Yandex
Disallow: /dogovor.pdf
# запрет на индексацию не только /my, но и /folder/my или /folder/my
User-agent: Yandex
Disallow: /*my

Правило Disallow работает с масками, позволяющими проводить операции с группами файлов или папок.

После данной директивы необходимо ставить пробел, а в конце строки пробел недопустим. В одной строке с Disallow через пробел можно написать комментарий после символа “#”.

Allow

В отличие от Disallow, данное указание разрешает индексацию определенных страниц, разделов или файлов сайта. У директивы Allow схожий синтаксис, что и у Disallow.

Хотя окончательное решение о посещении вашего сайта роботами принимает поисковая система, данное правило дополнительно призывает их это делать.

Примеры Allow в robots.txt:

# разрешает индексацию всего каталога /img/
User-agent: Yandex
Allow: /img/
# разрешает индексацию PDF документа
User-agent: Yandex
Allow: /prezentaciya.pdf
# открывает доступ к индексированию определенной HTML страницы
User-agent: Yandex
Allow: /page.html
# разрешает индексацию по маске *your
User-agent: Yandex
Allow: /*your
# запрещает индексировать все, кроме страниц, начинающихся с /cgi-bin
User-agent: Yandex
Allow: /cgi-bin
Disallow: /

Для директивы применяются аналогичные правила, что и для Disallow.

Совместная интерпретация директив

Поисковые системы используют Allow и Disallow из одного User-agent блока последовательно, сортируя их по длине префикса URL, начиная от меньшего к большему. Если для конкретной страницы веб-сайта подходит применение нескольких правил, поисковый бот выбирает последний из списка. Поэтому порядок написания директив в robots никак не сказывается на их использовании роботами.

На заметку. Если директивы имеют одинаковую длину префиксов и при этом конфликтуют между собой, то предпочтительнее будет Allow.

Пример robots.txt написанный оптимизатором:

User-agent: Yandex
Allow: /
Allow: /catalog/phones
Disallow: /catalog

Пример отсортированного файл robots.txt поисковой системой:

User-agent: Yandex
Allow: /
Disallow: /catalog
Allow: /catalog/phones
# запрещает посещать страницы, начинающиеся с /catalog,
# но разрешает индексировать страницы, начинающиеся с /catalog/phones

Пустые Allow и Disallow

Когда в директивах отсутствуют какие-либо параметры, поисковый бот интерпретирует их так:

# то же, что и Allow: / значит разрешает индексировать весь сайт
User-agent: Yandex
Disallow:
# не учитывается роботом
User-agent: Yandex
Allow:

Специальные символы в директивах

В параметрах запрещающей директивы Disallow и разрешающей директивы Allow можно применять специальные символы “$” и “*”, чтобы задать конкретные регулярные выражения.

Специальный символ “*” разрешает индексировать все страницы с параметром, указанным в директиве. К примеру, параметр /katalog* значит, что для ботов открыты страницы /katalog, /katalog-tovarov, /katalog-1 и прочие. Спецсимвол означает все возможные последовательности символов, даже пустые.

Примеры:

User-agent: Yandex
Disallow: /cgi-bin/*.aspx # запрещает /cgi-bin/example.aspx
                          # и /cgi-bin/private/test.aspx
Disallow: /*private # запрещает не только /private
                    # но и /cgi-bin/private

По стандарту в конце любой инструкции, описанной в Robots, указывается специальный символ “*”, но делать это не обязательно.

Пример:

User-agent: Yandex
Disallow: /cgi-bin* # закрывает доступ к страницам
                    # начинающимся с /cgi-bin
Disallow: /cgi-bin # означает то же самое

Для отмены данного спецсимвола в конце директивы применяют другой спецсимвол – “$”.

Пример:

User-agent: Yandex
Disallow: /example$ # закрывает /example,
                    # но не запрещает /example.html

User-agent: Yandex
Disallow: /example # запрещает и /example
                   # и /example.html

На заметку. Символ “$” не запрещает прописанный в конце “*”.

Пример:

User-agent: Yandex
Disallow: /example$  # закрывает только /example
Disallow: /example*$ # аналогично, как Disallow: /example
                     # запрещает и /example.html и /example

Более сложные примеры:

User-agent: Yandex
Allow: /obsolete/private/*.html$ # разрешает HTML файлы
                                 # по пути /obsolete/private/...
Disallow: /*.php$  # запрещает все *.php на сайте
Disallow: /*/private/ # запрещает все подпути содержащие /private/
                      # но Allow выше отменяет часть запрета
Disallow: /*/old/*.zip$ # запрещает все .zip файлы, содержащие в пути /old/

User-agent: Yandex
Disallow: /add.php?*user=
# запрещает все скрипты add.php? с параметром user

Примеры совместного применения Allow и Disallow

User-agent: Yandex
Allow: /
Disallow: /
# разрешено индексировать весь веб-ресурс

User-agent: Yandex
Allow: /$
Disallow: /
# запрещено включать в индекс все, кроме главной страницы

User-agent: Yandex
Disallow: /private*html
# заблокирован и /private*html,
# и /private/test.html, и /private/html/test.aspx и т.п.

User-agent: Yandex
Disallow: /private$
# запрещается только /private

User-agent: *
Disallow: /
User-agent: Yandex
Allow: /
# так как робот Яндекса
# выделяет записи по наличию его названия в строке User-agent:
# тогда весь сайт доступен для индексирования

Я всегда стараюсь следить за актуальностью информации на сайте, но могу пропустить ошибки, поэтому буду благодарен, если вы на них укажите. Если вы нашли ошибку или опечатку в тексте, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Правильный robots txt для WordPress сайта – инструкция на 2019-2020 год без плагинов

Для чего нужен robots.txt

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

Но пока не отменили, вебмастера должны делать его и настраивать правильно исходя из структуры и иерархии сайтов. Отдельная тема это WordPress, потому что CMS содержит множество элементов, которые не нужно сканировать и отдавать в индекс. Разберемся как правильно составить robots.txt

Где лежит файл robots в WordPress

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

Где располагается robots txtРасположение на сервере

Если не создавался и не загружался администратором сайта, то по умолчанию на сервере не найти. Стандартная сборка WordPress не предусматривает наличие такого объекта.

Как создать правильный robots txt

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

БлокнотСохраняем документ

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

При желании можете сразу скачать его на сервер в корень через программу FileZilla.

Кодировка и сохранениеСохранение роботса

Настройка команд

Выделю четыре основные команды:

  • User-agent: показывает правила для разных поисковых роботов, либо для всех, либо для отдельных
  • Disalow: запрещает доступ
  • Allow: разрешаем доступ
  • Sitemap: адрес до XML карты

Устаревшие и ненужные конфигурации:

  1. Host: указывает главное зеркало, стало не нужным, потому что поиск сам определит правильный вариант
  2. Crawl-delay: ограничивает время на пребывание робота на странице, сейчас сервера мощные и беспокоится о производительности не нужно
  3. Clean-param: ограничивает загрузку дублирующегося контента, прописать можно, но толку не будет, поисковик проиндексирует все, что есть на сайте и возьмет по–максимому страниц

Рабочий пример инструкций для WordPress

Дело в том что поисковой робот не любит запрещающие директивы, и все равно возьмет в оборот, что ему нужно. Запрет на индексацию должен быть объектов, которые 100% не должны быть в поиске и в базе Яндекса и Гугла. Данный рабочий пример кода помещаем в robots txt.

User-agent: *
Disallow: /wp-
Disallow: /tag/
Disallow: */trackback
Disallow: */page
Disallow: /author/*
Disallow: /template.html
Disallow: /readme.html
Disallow: *?replytocom
Allow: */uploads
Allow: *.js
Allow: *.css
Allow: *.png
Allow: *.gif
Allow: *.jpg
Sitemap: https://ваш домен/sitemap.xml

Разберемся с текстом и посмотрим что именно мы разрешили, а что запретили:

  • User-agent, поставили знак *, тем самым сообщив что все поисковые машины должны подчиняться правилам
  • Блок с Disallow запрещает к индексу все технические страницы и дубли. обратите внимание что я заблокировал папки начинающиеся на wp-
  • Блок Allow разрешает сканировать скрипты, картинки и css файлы, это необходимо для правильного представления проекта в поиске иначе вы получите портянку без оформления
  • Sitemap: показывает путь до XML карты сайта, обязательно нужно ее сделать, а так же заменить надпись”ваш домен”

Остальные директивы рекомендую не вносить, после сохранения и внесения правок, загружаем стандартный robots txt в корень WordPress. Для проверки наличия открываем такой адрес https://your-domain/robots.txt, заменяем домен на свой, должно отобразится так.

url расположенияАдрес в строке запроса

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

Стандартный способ проверить через сервис yandex webmaster.  Для лучшего анализа нужно зарегистрировать и установить на сайт сервис. Вверху видим загрузившийся robots, нажимаем проверить.

Валидатор yandexПроверка документа в yandex

Ниже появится блок с ошибками, если их нет то переходим к следующему шагу, если неверно отображается команда, то исправляем и снова проверяем.

Ошибки всего файла robotsОтсутствие ошибок в валидаторе

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

Проверка отдельный страниц Проверка папок и страниц в яндексе

Проверили, все срабатывает, перейдем к следующему способу это настройка robots с помощью плагинов. Если процесс не понятен, то смотрите наше видео.

Плагин–генератор Virtual Robots.txt

Если не хочется связываться с FTP подключением, то приходит на помощь один отличный WordPress плагин–генератор называется Virtual Robots.txt. Устанавливаем стандартно из админки вордпресс поиском или загрузкой архива, выглядит так.

Плагин Virtual Robots.txtКак выглядит Virtual Robots.txt

Переходим в админку Настройки > Virtual Robots.txt, видим знакомую конфигурацию, но нам нужно ее заменить, на нашу из статьи. Копируем и вставляем, не забываем сохранять.

Загрузка данных в Virtual Robots.txtНастройка Virtual Robots.txt

Роботс автоматически создастся и станет доступен по тому же адресу. При желании проверить есть он в файлах WordPress – ничего не увидим, потому что документ виртуальный и редактировать можно только из плагина, но Yandex и Google он будет виден.

Добавить с помощью Yoast SEO

Знаменитый плагин Yoast SEO предоставляет возможность добавить и изменить robots.txt из панели WordPress. Причем созданный файл появляется на сервере (а не виртуально) и находится в корне сайта, то есть после удаления или деактивации роботс остается. Переходим в Инструменты > Редактор.

Редактор в Yoast SeoYoast SEO редактор файлов

Если robots есть, то отобразится на странице, если нет есть кнопка “создать”, нажимаем на нее.

Создание файла индексацииКнопка создания robots

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

Изменить модулем в All in One SEO

Старый плагин All in One SEO умеет изменять robots txt, чтобы активировать возможность переходим в раздел модули и находим одноименный пункт, нажимаем Activate.

Модуль AIOSPМодули в All In one Seo

В меню All in One SEO появится новый раздел, заходим, видим функционал конструктора.

Добавление и удаление директивРабота в модуле AIOS
  1. Записываем имя агента, в нашем случае * или оставляем пустым
  2. Разрешаем или запрещаем индексацию
  3. Директория или страница куда не нужно идти
  4. Результат

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

Правильная настройка для плагина WooCommerce

Чтобы сделать правильную настройку для плагина интернет магазина на WordPress WooCommerce, добавьте эти строки к остальным:

Disallow: /cart/
Disallow: /checkout/
Disallow: /*add-to-cart=*
Disallow: /my-account/

Делаем аналогичные действия и загружаем на сервер через FTP или плагином.

Итог

Подведем итог что нужно сделать чтобы на сайте WordPress был корректный файл для поисковиков:

  • Создаем вручную или с помощью плагина файл
  • Записываем в него инструкции из статьи
  • Загружаем на сервер
  • Проверяем в валидаторе Yandex
  • Не пользуйтесь генераторами robots txt в интернете, пошевелите немного руками

Совершенствуйте свои блоги на WordPress, продвигайтесь и правильно настраивайте все параметры, а мы в этом поможем, успехов!

Пожалуйста, оцените материал: Мне нравится14Не нравится

Создаем правильный файл robots.txt — настраиваем индексацию, директивы

  1. Зачем robots.txt в SEO?
  2. Создаем robots самостоятельно
  3. Синтаксис robots.txt
  4. Обращение к индексирующему роботу
  5. Запрет индексации Disallow
  6. Разрешение индексации Allow
  7. Директива host robots.txt
  8. Sitemap.xml в robots.txt
  9. Использование директивы Clean-param
  10. Использование директивы Crawl-delay
  11. Комментарии в robots.txt
  12. Маски в robots.txt
  13. Как правильно настроить robots.txt?
  14. Проверяем свой robots.txt

Robots — это обыкновенный текстовой файл (.txt), который располагается в корне сайта наряду c index.php и другими системными файлами. Его можно загрузить через FTP или создать в файловом менеджере у хост-провайдера. Создается данный файл как обыкновенный текстовой документ с самым простым форматом — TXT. Далее файлу присваивается имя ROBOTS. Выглядит это следующим образом:

Robots.txt в корневой папке WordPress

(robots.txt в корневой папке WordPress)

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

В большинстве систем управления сайтами роботс присутствует по умолчанию, однако зачастую он настроен не полностью или совсем пуст. В любом случае, нам придется его править, так как для 95% проектов шаблонный вариант не подойдет.

Зачем robots.txt в SEO?

Первое, на что обращает внимание оптимизатор при анализе/начале продвижения сайта — это роботс. Именно в нем располагаются все главные инструкции, которые касаются действий индексирующего робота. Именно в robots.txt мы исключаем из поиска страницы, прописываем пути к карте сайта, определяем главной зеркало сайта, а так же вносим другие важные инструкции.

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

Создаем robots самостоятельно

Сам процесс создания файла до безобразия прост. Необходимо просто создать текстовой документ, назвав его «robots». После этого, подключившись через FTP соединение, загрузить в корневую папку Вашего сайта. Обязательно проверьте, что бы роботс был доступен по адресу ваш домен/robots.txt. Не допускается наличие вложений, к примеру ваш домен/page/robots.txt.

Если Вы пользуетесь web ftp — файловым менеджером, который доступен в панели управления у любого хост-провайдера,  то файл можно создать прямо там.

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

Используем online генераторы

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

Сгенерированный онлайн роботс нужно будет в любом случае править «руками», поэтому без знаний синтаксиса и основ Вам не обойтись и в этом случае.

Используем готовые шаблоны

В Интернете есть множество шаблонов для  распространенных CMS, таких как WordPress, Joomla!, MODx и т.д. От онлайн генераторов они отличаются только тем, что сам текстовой файл Вам нужно будет сделать самостоятельно. Шаблон позволяет не писать большинство стандартных директив, однако он не гарантирует правильную и полную настройку для Вашего ресурса. При использовании шаблонов так же нужны знания.

Синтаксис robots.txt

Использование правильного синтаксиса при настройке — это основа всего. Пропущенная запятая, слэш, звездочка или проблем могут «сбить» всю настройку. Безусловно, есть системы проверки файла, однако без знания синтаксиса они все равно не помогу. Мы по порядку рассмотрим все возможные инструкции, которые применяются при настройке robots.txt. Сначала самые популярные.

Обращение к индексирующему роботу

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


User-agent: Yandex
User-agent: YandexBot
User-agent: Googlebot

Строка 1 — Инструкции для всех роботов Яндекса
Строка 2 — Инструкции для основного индексирующего робота Яндекса
Строка 3 — Инструкции для основного индексирующего робота Google
Яндекс и Гугл имеют не один и даже не два робота. Действиями каждого можно управлять в нашем robots.txt. Давайте рассмотрим, какие бывают роботы и зачем они нужны.

Роботы  Yandex
НазваниеОписаниеПредназначение
YandexBot Основной индексирующий робот Отвечает за основную органическую выдачу Яндекса.
YandexDirect Работ контекстной рекламы Оценивает сайты с точки зрения расположения на них контекстных объявлений.
YandexDirectDyn Так же робот контекста Отличается от предыдущего тем, что работает с динамическими баннерами.
YandexMedia Индексация мультимедийных данных.Отвечает, загружает и оценивает все, что связано с мультимедийными данными.
YandexImages Индексация изображений Отвечает за раздел Яндекса «Картинки»
YaDirectFetcher Так же робот Яндекс Директ Его особенность в том, что он интерпретирует файл robots особым образом. Подробнее о нем можно прочесть у Яндекса.
YandexBlogs Индексация блогов Данный робот отвечает за посты, комментарии, ответы и т.д.
YandexNews Новостной робот Отвечает за раздел «Новости». Индексирует все, что связано с периодикой.
YandexPagechecker Робот микроразметки Данный робот отвечает за индексацию и распознание микроразметки сайта.
YandexMetrika Робот Яндекс Метрики Тут все и так ясно.
YandexMarket Робот Яндекс Маркета Отвечает за индексацию товаров, описаний, цен и всего того, что относится к Маркету.
YandexCalendar Робот Календаря Отвечает за индексацию всего, что связано с Яндекс Календарем.
Роботы Google
НазваниеОписаниеПредназначение
Googlebot (Googlebot) Основной индексирующий роботом Google.Индексирует основной текстовой контент страницы. Отвечает за основную органическую выдачу. Запрет приведет к полному отсутствия сайта в поиске.
Googlebot-News (Googlebot News) Новостной робот.Отвечает за индексирование сайта в новостях. Запрет приведет к отсутствию сайта в разделе «Новости»
Googlebot-Image (Googlebot Images) Индексация изображений.Отвечает за графический контент сайта. Запрет приведет к отсутствию сайта в выдаче в разделе «Изображения»
Googlebot-Video (Googlebot Video) Индексация видео файлов.Отвечает за видео контент. Запрет приведет к отсутствию сайта в выдаче в разделе «Видео»
Googlebot (Google Smartphone) Робот для смартфонов. Основной индексирующий робот для мобильных устройств.
 Mediapartners-Google(Google Mobile AdSense) Робот мобильной контекстной рекламыИндексирует и оценивает сайт с целью размещения релевантных мобильных объявлений.
 Mediapartners-Google(Google AdSense) Робот контекстной рекламы Индексирует и оценивает сайт с целью размещения релевантных объявлений.
 AdsBot-Google(Google AdsBot) Проверка качества страницы. Отвечает за качество целевой страницы — контент, скорость загрузки, навигация и т.д.
 AdsBot-Google-Mobile-AppsРобот Google для приложенийСканирование для мобильных приложений. Оценивает качество так же, как и предыдущий робот AdsBot

Обычно robots.txt настраивается для всех роботов Яндекса и Гугла сразу. Очень редко приходится делать отдельные настройки для каждого конкретного краулера. Однако это возможно.

Другие поисковые системы, такие как Bing, Mail, Rambler, так же индексируют сайт и обращаются к robots.txt, однако мы не будем заострять на них внимание. Про менее популярные поисковики мы напишем отдельную статью.

Запрет индексации Disallow

Без сомнения самая популярная директива. Именно при помощи disallow страницы исключаются из индекса. Disallow — буквально означает запрет на индексацию страницы, раздела, файла или группы страниц (при помощи маски). Рассмотрим пример:


Disallow: /wp-admin   
Disallow: /wp-content/plugins   
Disallow: /img/images.jpg   
Disallow: /dogovor.pdf   
Disallow: */trackback   
Disallow: /*my   

Строка 1 — запрет на индексацию всего раздела wp-admin
Строка 2 — запрет на индексацию подраздела plugins
Строка 3 — запрет на индексацию изображения в папке img
Строка 4 — запрет индексации документа
Строка 5 — запрет на индексацию trackback в любой папке на 1 уровень
Строка 6 — запрет на индексацию не только /my, но и /folder/my или /foldermy

Данная директива поддерживает маски, о которых мы подробнее напишем ниже.
После Disallow в обязательном порядке ставится пробел, а вот в конце строки пробела быть не должно. Так же, допускается написание комментария в одной строке с директивой через пробел после символа «#», однако это не рекомендуется.

Указание нескольких каталогов в одной инструкции не допускается!

Разрешение индексации Allow

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

Пример использования Allow


Allow: /img/   
Allow: /dogovor.pdf   
Allow: /trackback.html   
Allow: /*my   

Строка 1 — разрешает индексацию всего каталога /img/
Строка 2 — разрешает индексацию документа
Строка 3 — разрешает индексацию страницы
Строка 4 — разрешает индексацию по маске *my

Данная директива поддерживает и подчиняется всем тем же правилам, которые справедливы для Disallow.

Директива host robots.txt

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

Пример использования:


Host: dh-agency.ru

Если вы не пропишите главное зеркало сайта через host, Яндекс сообщит Вам об этом в Вебмастере.

Ошибка отсутствия директивы HOST

Не знаете главное зеркало сайта? Определить довольно просто. Вбейте в поиск Яндекса адрес своего сайта и посмотрите выдачу. Если перед доменом присутствует www, то значит главное зеркало у вас с www.

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

Sitemap.xml в robots.txt

Данную директиву желательно иметь в каждом robots.txt, так как ее используют yandex, google, а так же все основные поисковые системы. Директива представляет из себя ссылку на файл sitemap.xml в котором содержатся все страницы, которые предназначены для индексирования. Так же в sitemap указываются приоритеты и даты изменения.

Пример использования:


Sitemap: http://dh-agency.ru/sitemap.xml

О том, как правильно создавать sitemap.xml мы напишем чуть позже.

Использование директивы Clean-param

Очень полезная, но мало кем применяющаяся директива. Clean-param позволяет описать динамические части URL, которые не меняют содержимое страницы. Такими динамическими частями могут быть:

  • Идентификаторы сессий;
  • Идентификаторы пользователей;
  • Различные индивидуальные префиксы не меняющие содержимое;
  • Другие подобные элементы.

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

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


http://dh-agency.ru/folder/page.php?site=x&r_id=985
http://dh-agency.ru/folder/page.php?site=y&r_id=985
http://dh-agency.ru/folder/page.php?site=z&r_id=985

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


User-agent: Yandex
Disallow:
Clean-param: site /folder/page.php

В данном случае робот Яндекса либо сведет все страницы к одному варианту, либо проиндексирует ссылку без параметра. Если такая конечно есть.

Использование директивы Crawl-delay

Довольно редко используемая директива, которая позволяет задать роботу минимальный промежуток между загружаемыми страницами. Crawl-delay применяется, когда сервер нагружен и не успевает отвечать на запросы. Промежуток задается в секундах. К примеру:


User-agent: Yandex
Crawl-delay: 3

В данном случае таймаут будет 3 секунды. Кстати, стоит отметить, что Яндекс поддерживает и не целые значения в данной директиве. К примеру, 0.4 секунды.

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

Хороший robots.txt всегда пишется с комментариями. Это упростит работу Вам и поможет будущим специалистам.

Что бы написать комментарий, который будет игнорировать робот поисковой системы, необходимо поставить символ «#». К примеру:


#мой роботс
Disallow: /wp-admin   
Disallow: /wp-content/plugins   

Так же возможно, но не желательно, использовать комментарий в одной строке с инструкцией.


Disallow: /wp-admin   #исключаем wp admin
Disallow: /wp-content/plugins   

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

Маски в robots.txt

Применение масок в robots.txt не только упрощает работу, но зачастую просто необходимо. Напомним, маска — это условная запись, которая содержит в себе имена нескольких файлов или папок. Маски применяются для групповых операций с файлами/папками. Предположим, что у нас есть список файлов в папке /documents/

Маски в robots.txt

Среди этих файлов есть презентации в формате pdf. Мы не хотим, что бы их сканировал робот, поэтому исключаем из поиска.

Мы можем перечислять все файлы формата .pdf «в ручную»


Disallow: /documents/admin.pdf
Disallow: /documents/r7.pdf
Disallow: /documents/leto.pdf
Disallow: /documents/sity.pdf
Disallow: /documents/afrika.pdf
Disallow: /documents/t-12.pdf

А можем сделать простую маску *.pdf и скрыть все файлы в одной инструкции.


Disallow: /documents/*.pdf

Удобно, не правда ли?
Маски создаются при помощи спецсимвола «*». Он обозначает любую последовательность символов, в том числе и пробел. Примеры использования:


Disallow: *.pdf
Disallow: admin*.pdf
Disallow: a*m.pdf
Disallow: /img/*.*
Disallow: img.*
Disallow: &=*

Стоит отметить, что по умолчанию спецсимвол «*» добавляется в конце каждой инструкции, которую Вы прописываете. То есть,


Disallow: /wp-admin # равносильно инструкции ниже
Disallow: /wp-admin*

То есть, мы исключаем все, что находится в папке /wp-admin, а так же /wp-admin.html, /wp-admin.pdf и т.д. Для того, что бы этого не происходило необходимо в конце инструкции поставить другой спецсимвол — «$».


Disallow: /wp-admin$ # 

В таком случае, мы уже не запрещаем файлы /wp-admin.html, /wp-admin.pdf и т.д

Как правильно настроить robots.txt?

С синтаксисом robots.txt мы разобрались выше, поэтому сейчас напишем как правильно настроить данный файл. Если для популярных CMS, таких как WordPress и Joomla!, уже есть готовые robots, то для самописного движка или редкой СУ Вам придется все настраивать вручную.

(Даже несмотря на наличие готовых robots.txt редактировать и удалять «уникальный мусор» Вам придется  и в ВордПресс. Поэтому этот раздел будет полезен и для владельцев сайтов на ТОПовых CMS)

Что нужно исключать из индекса?

А.) В первую очередь из индекса исключаются дубликаты страниц в любом виде. Страница на сайте должна быть доступна только по одному адресу. То есть, при обращении к ресурсу робот должен получать по каждому URL уникальный контент.

Зачастую дубликаты появляются у систем управления сайтом при создании страниц. К примеру, одна и та же страница может быть доступна по техническому адресу /?p=391&preview=true и одновременно с этим иметь ЧПУ. Так же дубли могут возникать при работе с динамическими ссылками.

Всех их необходимо при помощи масок исключать из индекса.


Disallow: /*?*
Disallow: /*%
Disallow: /index.php
Disallow: /*?page=
Disallow: /*&page=

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

В.) Из индекса должны быть исключены все страницы, которые используются при работе сценариев. К примеру, страница «Спасибо, сообщение отправлено!».

Г.) Желательно исключить все страницы, которые имеют индикаторы сессий


Disallow: *PHPSESSID=
Disallow: *session_id=

Д.) В обязательном порядке из индекса должны быть исключены все файлы вашей cms. Это файлы панели администрации, различных баз, тем, шаблонов и т.д.


Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback

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

«Держа в чистоте» Ваш индекс Вы упрощаете жизнь и себе и индексирующему роботу.

Что нужно разрешать индексировать?

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

Корректный файл sitemap.xml и качественная перелинковка дадут гарантию, что все «нужные» страницы Вашего сайта будут проиндексированы.

Обязательны ли директивы host и sitemap?

Да, данные директивы обязательны. Прописать их не составит труда, но они гарантируют, что робот точно найдет sitemap.xml, и будет «знать» главное зеркало сайта.

Для каких поисковиков настраивать?

Инструкции файла robots.txt понимают все популярные поисковые системы. Если различий в инструкциях нету, то Вы можете прописать User-agent: * (Все директивы для всех поисковиков).

Однако, если Вы укажите инструкции для конкретного робота, к примеру Yandex, то все другие директивы Яндексом будут проигнорированы.

Нужны ли мне директивы Crawl-delay и Clean-param?

Если Вы используете динамические ссылки или же передаете параметры в URL, то Вам скорее всего понадобиться Clean-param, дабы не вводить робота в заблуждение. Использование данной директивы мы описали выше. Данная директива поможет Вам избежать ненужных дубликатов в поиске, что очень важно.

Использование Crawl-delay зависит исключительно от Вашего хостинга. Если Вы чувствуете, что сервер уже не справляется запросами, то желательно увеличить время межу ними.

Проверяем свой robots.txt

После настройки файла его необходимо проверить. Сделать это возможно через Ваш Вебмастер в разделе «Инструменты» -> «Анализ robots.txt»

Проверка robots.txt

Но нужно понимать, что данный онлайн инструмент сможет лишь найти синтаксическую ошибку. Он никак не убережет Вас от лишней исключенной страницы, а так же от мусора в выдаче.

И снова про robots.txt для WordPress (шпаргалка начинающим) / Хабр

Перед каждым блогером (продвинутым, да) рано или поздно встает вопрос: «Чего бы такого написать в robots.txt, чтобы было все в шоколаде?»

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

Думаю не стоит и говорить, что такие примеры слабо подходили под наши с вами реалии (читай ПС Яндекс — прим. автора).

Поэтому собрав воедино всю информацию найденную в сети, а также собственные мысли и понимание того «как должно быть» написал следующий вариант.

Что имеем?

Во-первых что важно — разные конструкции для Гугла (и остальных) и для Яндекса.

Обусловлено следующим: Для Гугла в дубликатах прописывается мета-тег canonical (в шаблоне вручную, или при помощи многочисленных сео-плагинов), который должен решать проблему дублирующегося контента, а Яндекс пока этого не понимает, там другие штучки…

Во-вторых у Яндекса прописан Host — что в любом случае не помешает.

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

В-четвертых используются более-менее принятые настройки ЧПУ и ссылок. Если у вас иерархия ЧПУ и ссылок другая (например изменены каким-либо плагином) — корректируйте исходя их своих настроек.

Основные ошибки виденные мной:
— зачастую для Яндекса прописывают только директива Host, оставляя Dissalow пустым, но такая конструкция дает право Яндексу опять индексировать все что угодно, несмотря на запреты в первой секции, что, впрочем, логично.
— закрывая категории не закрывают архивы по дате и архив автора.
— не закрывают системные адреса (трекбэки, вход и регистрацию)

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

Не думаю что он универсален и идеален, но думаю послужит многим хорошей отправной точкой. robots.txt:

User-agent: *
Disallow: /cgi-bin
# запрещаем индексацию системных папок
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
# запрещаем индексацию страницы входа и регистрации
Disallow: /wp-login.php
Disallow: /wp-register.php
# запрещаем индексацию трекбеков, rss-ленты
Disallow: /trackback
Disallow: /feed
Disallow: /rss
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: /xmlrpc.php
# запрещаем индексацию архива автора
Disallow: /author*
# запрещаем индексацию постраничных комментариев
Disallow: */comments
Disallow: */comment-page*
# запрещаем индексацию результатов поиска и другого возможного "мусора"
Disallow: /*?*
Disallow: /*?
# разрешаем индексацию вложений, особо мнительным можно запретить папку wp-content целиком
Allow: /wp-content/uploads

User-agent: Yandex
Disallow: /cgi-bin
# запрещаем индексацию системных папок
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
# запрещаем индексацию категорий
Disallow: /category*
# запрещаем индексацию архивов по датам. Прописываем вручную актуальные года
Disallow: /2008*
Disallow: /2009*
# запрещаем индексацию архива автора
Disallow: /author*
# запрещаем индексацию страницы входа и регистрации
Disallow: /wp-login.php
Disallow: /wp-register.php
# запрещаем индексацию трекбеков, rss-ленты
Disallow: /trackback
Disallow: /feed
Disallow: /rss
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: /xmlrpc.php
# запрещаем индексацию постраничных комментариев
Disallow: */comments
Disallow: */comment-page*
# запрещаем индексацию результатов поиска и другого возможного «мусора»
Disallow: /*?*
Disallow: /*?
# разрешаем индексацию вложений, особо мнительным можно запретить папку wp-content целиком
Allow: /wp-content/uploads
# прописываем директиву Host
Host: mysite.ru

User-agent: Googlebot-Image
Disallow:
Allow: /*
# разрешаем индексировать изображения

User-agent: YandexBlog
Disallow:
Allow: /*
# разрешаем индексировать rss-ленту

PS. Данный файл использую на своих блогах, валидность и правильность проверял в панели веб-мастера, добиваясь нужного мне результата. Поэтому если что-то не устраивает — проверяйте и дописывайте свое.
PPS. Я еще не матерый сеошник, посему где-то могу ошибаться. С robots.txt не ошибается тот, у кого такого файла вообще нет)

Правильный robots.txt для популярных CMS

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

Стоит учесть, что краулеры поисковых машин игнорируют определенные правила, например:

Директивы

Директивы — это правила для роботов. Есть спецификация W3C от 30 января 1994 года и расширенный стандарт от 1996 года. 

Основные — часто используемые директивы

User-agent: директива, с которой начинается Robots.txt. 

Пример:

User-agent: * # указания для всех поисковых роботов.
User-agent: Yandex # указания для робота Яндекса.
User-agent: GoogleBot # указания для робота Google.
Disallow: # запрещающая директива, запрет индексции того, что указанно после /.
Allow: # разрешающая директива, для указания на индексацию URL. 
Disallow: # не работает без спецсимвола /.  
Allow: / # игнорируются, если после / не указан URL.

Спецсимволы, которые используются в robots.txt  /, $.

Обратите внимание на символ /, можно допустить крупную ошибку прописав например:

User-agent:*
Disallow: / # таким образом можно закрыть весь сайт от индексации.

Спецсимвол означает любую, в том числе и пустую, последовательность символов, например:

Disallow: /cart/* # закрывает от индексации все страницы после URL: site.ru/cart/

Спецсимвол $ ограничивает действие символа *, дает строгое ограничение:

User-agent:*
Disallow: /catalog$ # при таком символе не будет индексироваться catalog, но в индексе будет catalog.html

Директива sitemap — указывает путь к карте сайта и выглядит так:

User-agent:* 
Allow: /  
Sitemap: http://www.site.ru/sitemap.xml # ее необходимо указывать с http:// или https://, https:// - указывается если подключён SSL сертификат

Директива Host — указывает главное зеркало сайта с www или без www.

User-agent:*
Allow: /  
Sitemap: http://www.site.ru/sitemap.xml 
Host: www.site.ru # следует писать путь к домену без http и без слэшей, убедитесь, что домен склеен. Без правильной склейки домена, одна и та же страница может попасть в индекс поисковых систем более одного раза, что может повлечь пессимизацию. 

Директива Crow-Delay — ограничивает нагрузку на сервер, задает таймаут для поисковых машин:

User-agent: * Crawl-delay: 2 # задает таймаут в 2 секунды.

User-agent: * 
Disallow: /search 
Crawl-delay: 4.5 # задает таймаут в 4.5 секунды.

Директива Clean-Param необходима, если адреса страниц сайта содержат динамические параметры, которые не влияют на содержимое, например: идентификаторы сессий, пользователей, рефереров и т. п.

Робот Яндекса, используя значения директивы Clean-Param, не будет многократно перезагружать дублирующуюся информацию. Таким образом, увеличится эффективность обхода вашего сайта, снизится нагрузка на сервер.

Например, страницы с таким адресом: 

www.site.com/some_dir/get_book.pl?ref=site_1&book_id=123
www.site.com/some_dir/get_book.pl?ref=site_2&book_id=123 
www.site.com/some_dir/get_book.pl?ref=site_3&book_id=123

Параметр ref используется только для того, чтобы отследить, с какого ресурса был сделан запрос и не меняет содержимое, по всем трем адресам будет показана одна и та же страница с книгой book_id=123. Тогда, если указать директиву следующим образом:

User-agent: Yandex
Disallow:
Clean-param: ref /some_dir/get_book.pl

робот Яндекса сведет все адреса страницы к одному:

www.site.com/some_dir/get_book.pl?ref=site_1&book_id=123,

Также стоит отметить, что для этой директивы есть несколько вариантов настройки

Кириллические символы в robots.txt

Использование символов русского алфавита запрещено в robots.txt, для этого необходимо использовать Punycode (стандартизированный метод преобразования последовательностей Unicode-символов в так называемые ACE-последовательности)

#Неверно:
User-agent: *
Disallow: /корзина
Host: интернет-магазин.рф

#Верно:
User-agent: *
Disallow: /%D0%BA%D0%BE%D1%80%D0%B7%D0%B8%D0%BD%D0%B0
Host: xn----8sbalhasbh9ahbi6a2ae.xn--p1ai

Рекомендации по тому, что нужно закрывать в файле robots.txt

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

Ошибки, которые могут быть в robots.txt

  • Пустая строка — недопустимо делать пустую строку в директиве user-agent, которая по правилам robots.txt считается «разделительной» (относительно блоков описаний). Это значит, что спрогнозировать применимость следующих за пустой строкой директив — нельзя. 
  • При конфликте между двумя директивами с префиксами одинаковой длины, приоритет отдается директиве Allow.
  • Для каждого файла robots.txt обрабатывается только одна директива Host. Если в файле указано несколько директив, робот использует первую.
  • Директива Clean-Param является межсекционной, поэтому может быть указана в любом месте файла robots.txt. В случае, если директив указано несколько, все они будут учтены роботом.
  • Шесть роботов Яндекса не следуют правилам Robots.txt (YaDirectFetcher, YandexCalendar, YandexDirect, YandexDirectDyn, YandexMobileBot, YandexAccessibilityBot). Чтобы запретить им индексацию на сайте, следует сделать отдельные параметры user-agent для каждого из них.
  • Директива User-agent всегда должна писаться выше запрещающей директивы.
  • Одна строка, для одной директории. Нельзя писать множество директорий на одной строке.
  • Имя файла должно быть только таким: robots.txt. Никаких Robots.txt, ROBOTS.txt, и так далее. Только маленькие буквы в названии.
  • В директиве host следует писать путь к домену без http и без слешей. Неправильно: Host: http://www.site.ru/, Правильно: Host: www.site.ru (или site.ru)
  • При использовании сайтом защищенного протокола https в директиве host (для робота Яндекса) нужно обязательно указывать именно с протоколом, так Host: https://www.site.ru

Проверка ошибок в robots.txt c помощью Лабрики

labrika→в левом меню Технический аудит→в выпадающем меню→Ошибки robots.txt→перепроверить robots.txt

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

Избыточное наполнение robots.txt. Начинающие веб-мастера впечатляются статьями, где сказано, что все ненужное необходимо закрыть в robots.txt и начинают закрывать вообще все, кроме текста на строго определенных страницах. Это, мягко говоря, неверно. Во-первых, существует рекомендация Google не закрывать скрипты, CSS и прочее, что может помешать боту увидеть сайт так же, как видит его пользователь. Во-вторых, очень большое количество ошибок связано с тем, что закрывая одно, пользователь закрывает другое тоже. Безусловно, можно и нужно проверять доступность страницы и ее элементов. Как вариант ошибки — путаница с последовательностью Allow и Disallow. Лучше всего закрывать в robots.txt только очевидно ненужные боту вещи, вроде формы регистрации, страницы перенаправления ссылок и т. п., а от дубликатов избавляться с помощью canonical. Обратите внимание: то, что вы поправили robots.txt, совсем не обозначает, что Yandex- bot и Google-bot его сразу перечитают. Для ускорения этого процесса достаточно посмотреть на robots.txt в соответствующем разделе вебмастера.

Примеры правильно настроенного robots.txt для разных CMS:

WordPress

User-Agent: *
Allow: /wp-content/uploads/
Disallow: /wp-login.php
Disallow: /wp-register.php
Disallow: /xmlrpc.php
Disallow: /template.html
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content
Disallow: /tag
Disallow: /category
Disallow: /archive
Disallow: */trackback/
Disallow: */feed/
Disallow: */comments/
Disallow: /?feed=
Disallow: /?s=

Host: site.ru
Sitemap: http://site.ru/sitemap.xml

ModX

User-agent: *
Disallow: /manager/
Disallow: /assets/components/
Disallow: /core/
Disallow: /connectors/
Disallow: /index.php
Disallow: *?
Host: example.ru
Sitemap: http://example.ru/sitemap.xml

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: /download
Disallow: /export
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: /*?page=
Disallow: /*&page=
Disallow: /wishlist
Disallow: /login
Disallow: /index.php?route=product/manufacturer
Disallow: /index.php?route=product/compare
Disallow: /index.php?route=product/category

Joomla

User-agent:*
Allow: /index.php?option=com_xmap&sitemap=1&view=xml
Disallow: /administrator/  
Disallow: /cache/
Disallow: /components/
Disallow: /go.php
Disallow: /images/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /logs/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Disallow: /*com_mailto*
Disallow: /*pop=*
Disallow: /*lang=ru*    
Disallow: /*format=*    
Disallow: /*print=*
Disallow: /*task=vote*
Disallow: /*=watermark*     
Disallow: /*=download*
Disallow: /*user/*    
Disallow: /.html        
Disallow: /index.php?
Disallow: /index.html
Disallow: /*? 
Disallow: /*%
Disallow: /*&
Disallow: /index2.php
Disallow: /index.php  
Disallow: /*tag           
Disallow: /*print=1        
Disallow: /trackback        
Host: Ваш сайт                

Bitrix

User-agent: *
Disallow: /*index.php$
Disallow: /bitrix/
Disallow: /auth/
Disallow: /personal/
Disallow: /upload/
Disallow: /search/
Disallow: /*/search/
Disallow: /*/slide_show/
Disallow: /*/gallery/*order=*
Disallow: /*?print=
Disallow: /*&print=
Disallow: /*register=
Disallow: /*forgot_password=
Disallow: /*change_password=
Disallow: /*login=
Disallow: /*logout=
Disallow: /*auth=
Disallow: /*?action=
Disallow: /*action=ADD_TO_COMPARE_LIST
Disallow: /*action=DELETE_FROM_COMPARE_LIST
Disallow: /*action=ADD2BASKET
Disallow: /*action=BUY
Disallow: /*bitrix_*=
Disallow: /*backurl=*
Disallow: /*BACKURL=*
Disallow: /*back_url=*
Disallow: /*BACK_URL=*
Disallow: /*back_url_admin=*
Disallow: /*print_course=Y
Disallow: /*COURSE_ID=
Disallow: /*?COURSE_ID=
Disallow: /*?PAGEN
Disallow: /*PAGEN_1=
Disallow: /*PAGEN_2=
Disallow: /*PAGEN_3=
Disallow: /*PAGEN_4=
Disallow: /*PAGEN_5=
Disallow: /*PAGEN_6=
Disallow: /*PAGEN_7=
Disallow: /*PAGE_NAME=user_post
Disallow: /*PAGE_NAME=detail_slide_show
Disallow: /*PAGE_NAME=search
Disallow: /*PAGE_NAME=user_post
Disallow: /*PAGE_NAME=detail_slide_show
Disallow: /*SHOWALL
Disallow: /*show_all= Host: sitename.ru
Sitemap: http://www.sitename.ru/sitemap.xml

В данных примерах, в указании User-Agent указан параметр * , разрешающий доступ всем поисковым роботам, для настройки robots.txt под отдельные поисковые системы вместо спецсимвола указывается название робота  Yandex, GoogleBot, StackRambler, Slurp, MSNBot, ia_archiver.

 

robots.txt, чтобы запретить все страницы кроме одной? Они отменяют и каскадируют?

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
  6. О компании

Загрузка…

.

Разрешить или запретить весь или часть вашего веб-сайта

Печальная реальность такова, что большинство веб-мастеров понятия не имеют, что такое файл robots.txt. Робот в этом смысле — «паук». Это то, что поисковые системы используют для сканирования и индексации веб-сайтов в Интернете.

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

Когда поисковая машина (или робот, или паук) попадает на сайт, первое, что она ищет, — это файл robots.txt. Не забудьте сохранить этот файл в корневом каталоге.

Пример: https://www.hostingmanual.net/robots.txt

Сохранение файла в корневом каталоге гарантирует, что робот сможет найти файл и правильно его использовать. Файл скажет роботу, что сканировать, а что нет. Эта система называется « Стандарт исключения роботов ».

Страницы, запрещенные в файле robots.txt, не будут проиндексированы, и пауки не будут их сканировать .

Robots.txt Формат

Формат файла robots.txt — это особый формат, но он очень простой. Он состоит из строки «User-agent:» и строки «Disallow:».

Строка «User-agent:» относится к роботу. Его также можно использовать для обозначения всех роботов.

Пример запрета всех роботов:

Чтобы запретить всем роботам индексировать определенную папку на сайте, мы будем использовать это:

User-agent: *
Disallow: / cgi-bin /

Для строки User-agent мы использовали подстановочный знак «*», который сообщает всем роботам, что нужно слушать эту команду.Итак, как только паук прочитает это, он будет знать, что / cgi-bin / вообще не следует индексировать. Это будет включать все содержащиеся в нем папки.

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

Вот пример ограничения доступа к / cgi-bin / из Google:

User-agent: Googlebot
Disallow: / cgi-bin /

На этот раз с командой User-agent мы использовали вместо этого Googlebot команды с подстановочными знаками «*.Эта строка позволяет пауку Google знать, что мы говорим именно с ним, а не сканировать эту папку или файл.

Пробелы и комментарии

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

Не рекомендуется:

User-agent: googlebot #Google Robot

Рекомендуется:

User-agent: googlebot
#Google Robot

Уведомление о первой строке комментария находится та же строка, обозначенная символом #, а затем комментарием.Хотя это нормально и будет принято в большинстве случаев, многие роботы могут не использовать это. Поэтому при использовании комментариев обязательно используйте Пример 2.

В большинстве случаев, если используется Пример 1 и робот не поддерживает его, робот интерпретирует строку как «googlebot # GoogleRobot». Вместо «googlebot», как мы изначально задумывали.

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

Общие имена роботов

Вот несколько самых популярных имен роботов:

  • Googlebot — Google.com
  • YandexBot — Yandex.ru
  • Bingbot — Bing.com

Это лишь несколько распространенных роботов, которые в любой момент попадают на сайт.

Robots.txt Примеры

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

Следующее позволяет всем роботам индексировать весь сайт. Обратите внимание, что команда «Disallow:» пуста; это говорит роботам, что все в порядке.

User-agent: *
Disallow:

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

User-agent: *
Disallow: /

Следующее указывает всем роботам (указанным подстановочной командой в функции «User-agent:») не разрешать cgi-bin, изображения и папку загрузок в индексироваться. Он также не позволяет индексировать файл admin.php, который находится в корневом каталоге. В этом случае также можно использовать файлы и папки подкаталогов.

User-agent: *
Disallow: / cgi-bin /
Disallow: / images /
Disallow: / downloads /
Disallow: admin.php

Этот список сообщает Google Bot не индексировать wp-admin папка.

User-agent: googlebot
Disallow: / wp-admin /

Заключение

Дополнительную информацию о файлах robots.txt можно найти на сайте Robotstxt.org. Почти все основные сайты используют файл robots.txt. Просто введите URL-адрес и добавьте robots.txt в конец, чтобы узнать, использует ли его сайт или нет.Он отобразит их файл robots.txt в виде обычного текста, чтобы любой мог его прочитать.

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

.

как запретить все динамические URL-адреса robots.txt

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
  5. Реклама Обратитесь к разработчикам и технологам со всего мира
  6. О компании

Загрузка…

  1. Авторизоваться зарегистрироваться
  2. текущее сообщество

.

Добавить комментарий

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