роботс

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

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

Robots.txt используется для того, чтобы задать правила поведения для поисковых роботов. С его помощью можно повлиять на процесс индексации страниц сайта. Файл robots.txt можно сделать в любом текстовом редакторе и располагается он в корневом каталоге Вашего сайта. Таким образом Ваш robots.txt всегда доступен по адрессу vash_site.ru. Понятно, что можно просмотреть robots.txt любого сайта, это может быть полезно в качестве примера для определения лучшего варианта для Вашего robots.txt, только помните, что для разных сайтовых движков оптимальные robots.txt будут значительно отличаться.

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

Существуют как общие правила синтаксиса и директивы, так и некоторые уникальные команды понятные для роботов, только определенных поисковых систем. Директива в файле robots.txt имеет такой вид: 

<поле>:<пробел><значение><пробел>
<поле>:<пробел><значение><пробел>

Файл robots.txt должен содержать хотя бы одну директиву "Disallow" после каждой записи "User-agent". 
Пустой файл robots.txt предполагает разрешение на индексирование всего сайта, точно так же происходит, если поисковый робот увидел ошибки в файле. Disallow - понятная всем без исключения ботам команда, запрещающая индексировать ту или иную директорию сайта (файл, группу файлов).
Директива User-agent указывает, на то какому именно роботу относятся нижеследующие предписания, директива User-agent: *
адресована всем ботам, зашедшим на Ваш сайт. У каждого поискового бота есть свое уникальное системное имя.
Здесь приведены наиболее часто встречаемые поисковые роботы:
Google www.google.com Googlebot
Yahoo! www.yahoo.com Slurp (или Yahoo! Slurp)
MSN www.msn.com MSNBot
Live www.live.com MSNBot
Ask www.ask.com Teoma
Lycos www.lycos.com Lycos
Яндекс www.ya.ru Yandex
Рамблер www.rambler.ru StackRambler
Мэйл.ру mail.ru Mail.Ru
Aport www.aport.ru Aport
Вебальта www.webalta.ru WebAlta (WebAlta Crawler/2.0)

Итак, например, код
User-agent: Yandex 
Crawl-delay: 100

Задает поисковому роботу Yandex минимальный период времени (в секундах) между концом закачки одной страницы и началом закачки следующей. На крупных порталах это позволяет снять лишнюю нагрузку на сервер.
У крупных поисковых систем также имеются отдельные боты для индексирования картинок, новостей, блогов, что позволяет производить еще более точную настройку.

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

  1. Приведенный ниже код для файла robots.txt разрешает всем поисковым ботам индексировать весь сайт. Это задается пустой директивой Disallow.
    User-agent: *
    Disallow:
  2. Следующий код, напротив, запрещает всем поисковикам индексировать сайт. Устанавливает это директива Disallow с «/» в поле значения (т.е. запрещается к индексации все, что находится в каталоге сайта).
    User-agent: *
    Disallow:
  3. Такая директива будет запрещать всем поисковикам индексировать содержимое каталога /index/ (vash_site.ru/index — путь к этому каталогу)
    User-agent: *
    Disallow: /index
  4. Теперь обратите внимание, так как такие ошибки встречаются часто. В следующем примере, для индексирования будут запрещены директория "index" и все файлы и директории, начинающиеся с символами "index", т. е. файлы: "index.htm", "index.html", папки: "index", "index234" и т.д. 
    User-agent: *
    Disallow: /index
  5. Также при написании масок файлов и папок можно использовать символы '*' и '$'. Символ '*' означает любую (в том числе пустую) последовательность символов, '$'- любой символ. Например, для запрета индексации всех файлов с расширением ".aspx":
    User-agent: *
    Disallow: *.aspx
  6. Можно использовать связку Allow-Disallow для включения в индекс контента в закрытых для индексации каталогах. Например в следующем примере, будет открыта для индексации лишь одна директория "forindex" из всех, что находятся в папке "img":
    User-agent: *
    Disallow: /img/
    Allow: /img/forindex/

Еще одна общая директива для всех поисковиков это sitemap. Указывает путь, где находится карта сайта в формате .xml. Пример:

Sitemap: vash_site.ru/sitemap.xml

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

Но рекомендацию адресовать директиву Host для Yandex я нашел как на ресурсе, который посвящен robots.txt (robotstxt.org.ru) так и в документации самого Яндекса.

User-agent: Yandex
Disallow:
Host: www.vash_site.ru
Как Вы видите, обязательное условие, наличия хотя бы одной директивы Disallow выполняется. Более подробно ознакомиться с названиями всех ботов, списком уникальных директив и рекомендациями по оформлению robots.txt можно, зарегистрировавшись в панели веб-мастеров, соответствующего поисковика. Так например, тот же Яндекс рекомендует, отдельно приводить ограничения для себя (User-Agent: Yandex ). Поэтому часто можно встретить в robots.txt дублирование ограничений (сначала для User-Agent: * , а потом для User-Agent: Yandex).

Примеры оптимальных robots.txt

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

User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/

User-agent: Yandex
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Host: vash_sait.ru
Sitemap: https://vash_sait.ru/sitemap.xml

Где Host, Ваш предпочтительный вариант, а https://vash_sait.ru/sitemap.xml - путь к карте сайта.
В отличии от рекомендуемого разработчиками, я рекомендую открыть для индексации директорию "images", особенно если Вы используете уникальные картинки. Как видите, закрыты для роботов системные папки, кеш, временные файлы.

Для Wordpress оптимальным вариантом является следующий:

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed/*/
Disallow: */feed
Disallow: /*?*

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

Мета-тег Robots

Существует способ сообщить роботам поисковиков о том, можно ли индексировать данную конкретную страницу или нет. Для этого внутри тега "HEAD" нужной страницы, прописывается meta-tag “Robots”, но так нужно делать для всех страниц, к которым нужно применить то или иное правило индексации. Пример применения мета-тега:

 <html>
<head>
<meta name="robots" content="noindex,nofollow">
<meta name="description" content="Здесь описание страницы ....">
<title>...</title>
</head>
<body>

Данная страница закрыта для индексации (noindex в мета-теге) и анализе размещенных на ней ссылок (об этом говорит nofollow) .
Существуют только две пары директив: [no]index и [no]follow. Index указывают, может ли робот индексировать страницу. Follow — может ли он следовать по ссылкам со страницы. Значения по умолчанию – "index" и "follow". 
Есть также укороченный вариант написания с использованием "all" и "none", которые обозначают активность обеих директив или, соответственно, наоборот: all=index,follow и none=noindex,nofollow.
Использование тегов удобно, особенно, если на Вашем сайте есть страница которую поисковики могут расценить, как линкопомойку.

Читайте также:
Внешняя оптимизация сайта;
Ускорение индексации сайта. Полезные советы

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


Защитный код
Обновить