Robots.txt — улучшаем индексацию сайта Яндексом и Google с помощью правильных файлов для WordPress, Joomla и SMF

robot txt joomla 1При самостоятельном продвижении и раскрутке сайтат важно не только создание уникального контента или подбор запросов в статистике Яндекса, но и так же следует уделять должное внимание такому показателю, как индексация ресурса поисковиками, ибо от этого тоже зависит весь дальнейший успех продвижения.

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

Почему так важно управлять индексацией сайта

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

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

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

Хорошим решением будет запрет всего лишнего в robots.txt (все буквы в названии должны быть в нижнем регистре — без заглавных букв).

С его помощью мы сможем влиять на процесс индексации сайта Яндексом и Google. Представляет он из себя обычный текстовый файл, который вы сможете создать и в дальнейшем редактировать в любом текстовом редакторе (например, Notepad++). Поисковый бот будет искать этот файл в корневом каталоге вашего ресурса и если не найдет, то будет загонять в индекс все, до чего сможет дотянуться.

Кстати, если вы хотите узнать как выглядит этот файл у того или иного проекта в сети, то достаточно будет дописать к Урлу его главной страницы окончание вида /robots.txt. Это может быть полезно для понимания того, что в нем должно быть.

Однако, при этом надо учитывать, что для разных движков этот файл будет выглядеть по разному (папки движка, которые нужно запрещать индексировать, будут называться по разному в разных CMS). Поэтому, если вы хотите определиться с лучшим вариантом роботса, допустим для форума на SMF, то и изучать нужно только форумы, построенные на этом движке.
Директивы и правила написания файла robots.txt (disallow, user-agent, host)

Роботс имеет совсем не сложный синтаксис, который очень подробно описан, например, в хелпе яндекса. Обычно в нем указывается, для какого поискового бота предназначены описанные ниже директивы: имя бота ('User-agent'), разрешающие ('Allow') и запрещающие ('Disallow'), а также еще активно используется 'Sitemap' для указания поисковикам, где именно находится файл карты.

Еще полезно указать в этом файле, какое из зеркал вашего вебпроекта является главным в специальной директиве 'Host', которую понимает только Яндекс. Если даже у вашего ресурса нет зеркал, то полезно будет указать, какой из вариантов написания является главным — с www или без него. Т.к. это тоже является своего рода зеркалированием. Об этом я подробно рассказывал в статье про 301 редирект для доменов с WWW и без него.

Теперь поговорим немного о синтаксисе этого файла. Директивы в robots.txt имеют следующий вид:

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

Правильный код должен содержать хотя бы одну директиву «Disallow» после каждой записи «User-agent». Пустой файл предполагает разрешение на индексирование всего сайта.

Директива «User-agent» должна содержать название поискового бота. При помощи нее можно настроить правила поведения для каждого конкретного поисковика (например, создать запрет индексации отдельной папки только для Яндекса). Пример написания «User-agent», адресованной всем ботам зашедшим на ваш ресурс, выглядит так:

User-agent: *


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

User-agent: Yandex


Бот каждой поисковой системы имеет своё название (например, для рамблера это StackRambler). Здесь я приведу список самых известных из них:

Google http://www.google.com Googlebot
Yahoo! http://www.yahoo.com Slurp (или Yahoo! Slurp)
AOL http://www.aol.com Slurp
MSN http://www.msn.com MSNBot
Live http://www.live.com MSNBot
Ask http://www.ask.com Teoma
AltaVista http://www.altavista.com Scooter
Alexa http://www.alexa.com ia_archiver
Lycos http://www.lycos.com Lycos
Яндекс http://www.ya.ru Yandex
Рамблер http://www.rambler.ru StackRambler
Мэйл.ру http://mail.ru Mail.Ru
Aport http://www.aport.ru Aport
Вебальта http://www.webalta.ru WebAlta (WebAlta Crawler/2.0)


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

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

User-agent: *
Disallow:


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

User-agent: *
Disallow: /


3. В этом случае будет запрещаться всем ботам просматривать содержимое каталога /image/ (http://joomla4.ru/image/ — абсолютный путь к этому каталогу)

User-agent: *
Disallow: /image/


4. В приведенном ниже примере будут запрещены директория «image», а так же все файлы и директории, начинающиеся с символов «image», т. е. файлы: «image.htm», «images.htm», каталоги: «image», «images1», «image34» и т. д.):

User-agent: *
Disallow: /image


5. При описании путей для директив Allow-Disallow можно использовать символы '*' и '$', задавая, таким образом, определенные логические выражения. Символ '*' означает любую (в том числе пустую) последовательность символов. Следующий пример запрещает всем поисковикам индексацию файлов с расширение «.aspx»:

User-agent: *
Disallow: *.aspx


Во избежания возникновения неприятных проблем с зеркалами сайта рекомендуется добавлять в robots.txt директиву Host, которая указывает боту Yandex на главное зеркало. По правилам написания в записи для User-agent должна быть хотя бы одна директива Disallow (обычно ставят пустую, ничего не запрещающую):

User-agent: Yandex
Disallow:
Host: www.joomla4.ru

либо

User-agent: Yandex
Disallow:
Host: joomla4.ru

в зависимости от того, что для вас оптимальнее.

Директива Sitemap указывает на местоположение файла карты сайта (обычно он называется Sitemap.xml, но не всегда). В качестве параметра указывается путь к этому файлу, включая http:// (т.е. его Урл). Например:Sitemap: http://joomla4.ru/sitemap.xml

Мета-тег Robots — помогает закрыть дубли контента

Существует еще один способ настроить (разрешить или запретить) индексацию отдельных страниц вебсайта, как для Яндекса, так и для Гугле. Для этого внутри тега «HEAD» нужной вебстраницы дописывается МЕТА-тег 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.

Более подробные объяснения можно найти, например, в хелпе Яндекса:

ieurgbeiugbeuslugh

Для блога на WordPress вы сможете настроить мета-тег Robots, например, с помощью плагина All in One SEO Pack. Ну все, с теорией покончено и пора переходить к практике, а именно к составлению оптимальных robots.txt для Joomla, SMF и WordPress.

Как известно, у проектов, созданных на основе какого-либо движка (Joomla, WordPress, SMF и др), имеется множество вспомогательных объектов не несущих никакой информативной нагрузки.

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

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

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

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

Если ваш проект создан на основе какого-либо движка, то дублирование контента будет иметь место с высокой вероятностью, а значит нужно с ним бороться, в том числе и с помощью запрета в robots.txt, а особенно в мета-теге, ибо в первом случае Google запрет может и проигнорировать, а вот на метатег наплевать он уже не сможет (так воспитан).

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

Но если с помощью описанного выше мета-тега создать запрет для архива тегов и временного архива (можно теги оставить, а запретить индексацию содержимого рубрик), то дублирования контента не возникнет. Для этой цели в WordPress лучше всего будет воспользоваться возможностями плагина All in One SEO Pack, ссылку на описание которого ищите чуть выше по тексту.

Еще сложнее с дублированием контента обстоит дело в форумном движке SMF. Если не производить тонкую настройку (запрет) через robots, то в поиск попадут многократные дубли одних и тех же постов. В Joomla тоже, кстати, иногда возникает проблема с дублированием обычных документов и их копий, предназначенных для печати.

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

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

Правильное составление robots.txt 

Теперь давайте рассмотрим конкретные примеры роботса, предназначенного для разных движков — Joomla, WordPress и SMF. Естественно, что все три варианта, созданные для разных CMS, будут существенно (если не сказать кардинально) отличаться друг от друга. Правда, у всех у них будет один общий момент и момент этот связан с поисковой системой Яндекс.

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

Для нее советуют использовать отдельный блог User-agent, предназначенный только для Яндекса (User-agent: Yandex). Это связано с тем, что остальные поисковые системы могут не понимать Host и, соответственно, ее включение в запись User-agent, предназначенную для всех поисковиков (User-agent: *), может привести к негативным последствиям и неправильной индексации.

Как обстоит дело на самом деле — сказать трудно, ибо алгоритмы работы поиска — это вещь в себе, поэтому лучше сделать так, как советуют. Но в этом случае придется продублировать в директиве User-agent: Yandex все те правила, что мы задали User-agent: *. Если вы оставите User-agent: Yandex с пустым Disallow:, то таким образом вы разрешите Яндексу заходить куда угодно и тащить все подряд в индекс.

Прежде, чем перейти к рассмотрению конкретных вариантов, хочу вам напомнить, что проверить работу своего robots.txt вы можете в Яндекс Вебмастере и Гугл Вебмастере. Там вы сможете указывать конкрентные Урлы своего ресурса и посмотреть (проверить), будет ли данный поисковик добавлять их в свой индекс или это действо удачно запрещено вами в чудо-файле.

Правильный robots.txt для Joomla

Рекомендованный файл для Джумлы выглядит так:

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

В принципе, здесь практически все учтено и работает он хорошо. Единственное, в него следует добавить отдельное правило User-agent: Yandex для вставки директивы Host, определяющей главное зеркало для Яндекса, а так же указать путь к файлу Sitemap.

Поэтому в окончательном виде правильный robots для 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: joomla4.ru
Sitemap: http://joomla4.ru/index.php?option=com_xmap&sitemap=1&view=xml&no_html=1


Да, еще обратите внимание, что во втором варианте нет директивы Disallow: /images/, дающей запрет индексации картинок вашего сайта. Я забыл сначала акцентировать ваше внимание на этом, но мне об этом напомнил уважаемый Alex.

Полностью с ним согласен в том, что если изображения уникальные и вы хотите, чтобы посетители находили ваш ресурс еще и с поиска по картинкам от Яндекса и Google, то обязательно удалите это правило из своего файла, но так же не забывайте прописывать всем вашим изображениям атрибуты Alt и Title в тег Img.

При создании интернет магазина для Joomla на основе компонента VirtueMart я столкнулся с тем, что в индексы поисковиков стали попадать версии для печати страниц этого самого магазина. Кнопка, ведущая на страницу для печати, была необходима (заказчик так хотел), поэтому оставался только вариант с их запретом в robots.txt.

Но все оказалось совсем не сложно. Дело в том, что для создания версии для печати в Джумле используется такой же Урл вебстраницы, за исключением одного: обращение идет не к index.php, а к index2.php. При этом не осуществляется загрузка шаблона, т.е. выводится только содержимое на весь экран.

Поэтому, для запрета версий для печати в VirtueMart я добавил в следующее правило:Disallow: /index2.php?page=shop

__________________________________________________________________________________________________________________

скачать joomla | обновление joomla | модуль joomla | администрирование | seo продвижение | joomla магазиншаблоны сайтов

обратная связь 

При копировании материала ссылка на сайт joomla4.ru обязательна.