Создание robots txt для joomla. Или как запретить к индексации ненужные страницы и каталоги сайта

Joomla!

Тема очень актуальная, особенна тем кому важно лояльное отношение поисковиков к своему сайту. Суть проблемы заключается в том, что на сайте созданном с помощью joomla часто создается много дублирующего контента, так же поисковики пытаются индексировать то что для этого не предназначено. И когда в индекс поисковика попадает вся эта шушара, отношение к сайту может испортиться. Ведь раз в индексе сидит наряду с нормальным контентом, страницы которые вообще ничего полезного не содержат или повторяют по несколько раз уже проиндексированный текст, значит сайт не слишком заботится о том что индексировать, а что нет. Следовательно и поисковики начинают к таким сайтам относится настороженно, накладывают фильтры, или вообще выкидывают из индекса! А нам ведь этого ненужно! Что делать? Надо бороться за чистоту выдачи  и всячески помогать поисковым системам индексировать только нужный материал.

Всё это делается с помощью одного волшебного файла robots.txt. Который мы в этой статье и научимся создавать для сайта на joomle. Этим файлом мы говорим поисковым ботам, куда идти можно, а куда нельзя. Файл этот можно создать и с помощью блокнота, после создание необходимо его разместить в корне вашего сайта, там его и будут кушать поисковые паучки.

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

User-agent: <пробел> Значение <пробел>
Disallow: <пробел> Значение <пробел>

Они так в паре и используются. Директива User-agent обращается конкретно к какому либо поисковому боту (значение – Yandex, Googlebot, StackRambler и так далее) или ко всем ботам одновременно (просто ставим *).

Так же есть разрешающие (Allow) и запрещающие (Disallow) директивы, последняя, кстати, должна присутствовать в любом случае. Используются они по аналогичному принципу –
Allow: <пробел> Значение <пробел>
Disallow: <пробел> Значение <пробел>

Пример файла robots.txt разрешающего всем ботам индексировать весь сайт

User-agent: *
Disallow: 

А этот файл  robots.txt, напротив, запрещает всем роботам индексировать ваш сайт

User-agent: *
Disallow:  /

Давайте теперь приведем пример запрета к индексации какого-либо типа файлов и каталога для всех типов поисковых ботов.
Например мы хотим запретить к индексации всё что находится в каталоге admin, при этом путь к этому каталогу следующий - http://site.ru/admin/ . В таком случае наш файл robots.txt приобретет следующий вид –

User-agent: *
Disallow:  /admin/

Следующая же запись запретит к индексации не только упомянутый каталог admin, но и все файлы и другие каталоги в состав имени которых входит это слово.
User-agent: *
Disallow:  /admin

Таким образом мы запретили к индексации такие файлы как admin.php, administrator.html и такие каталоги как admin, adminmain и так далее.

Описывая путь и тип файлов, мы можем использовать знаки (*) и ($). При использовании * мы как бы говорим, что вместо этого символа в пути или имени файла, может быть любой символ и даже пробел. Например, мы захотели запретить к индексации файлы определенного типа, скажем xml. Тогда мы напишем следующее -

User-agent: *
Disallow:  *.xml

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

User-agent: *
Disallow:  /admin

И

User-agent: *
Disallow:  /admin*

Равнозначны, и они запрещают к индексации не только каталог admin, но и все прочие каталоги и файлы начинающиеся с этого слова. Таким образом и файл admin.php также будет исключен из индексации. Но стоит нам добавить знак $, как сразу такая запись закроет от индексации каталог admin, но проиндексирует файл admin.php

User-agent: *
Disallow:  /admin$

Что же ещё можно записать в файле robots.txt? Можно например, роботам яндекса сказать с помощью директивы Host, какое имя сайта считать основным зеркалом (чаще всего тут пишут что главнее домен c www или без www). Вот пример записи, которая говорит яндексу, что домен с www является главным зеркалом сайта.

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

Директиву Host необходимо использовать только после директив User-agent и Disallow или Allow.
Например, если напишите так, будет не правильно и директива будет проигнорирована.

User-Agent: *
Host: www.myhost.ru
Disallow:

Используют так же и директиву Sitemap – она говорит поисковикам, где находится карта сайта в формате .xml. Выглядит это так –

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

Что означает, что в корневой папке сайта, можно найти карту сайта – sitemap.xml

Какие ещё рекомендации можно дать по созданию robots.txt? Перед каждой директивой User-agent, необходимо оставлять пустую строку. Таким образом первая строка в этом файле рекомендуется оставить пустой. Начинать же писать только со второй и так перед каждой такой директивой.

Можно сделать комментарий, делается он с помощью знака # . Всё что идет за ним по этой строчке – считается комментарием. Например, так

User-agent: Yandex
Disallow: 
Host: www.site.ru
#выбираем в качестве основного зеркала имя домена с www

Давайте рассмотрим стандартный вариант файла robots.txt подходящего для большинства файлов на joomla. В котором запрещаются к индексации все ненужные места. Таким образом, мы дадим шанс поисковым роботам успеть проиндексировать все нужные страницы, не тратя время на ненужные.

Вот он:

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

Или вот вариант по интереснее

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: www.mysite.ru
Sitemap: http://mysite.ru/index.php?option=com_xmap&sitemap=1&view=xml&no_html=1

 

Что мы видим? В первом примере мы тупо запретили к индексации не нужные каталоги. Во втором, мы помимо этого ещё и для Яндекса создали отдельное правило. Так как не факт что другие поисковики поняли бы директивы, которые понимает он, имеется ввиду Host.

P.S. недавно столкнулся с проблемой, когда в индекс яндекса попало парочку динамических страниц сайта, которым там в принципе делать нечего. Для того что-бы избавиться от этого "счастья" я решил внести кое-какие исправления в файл robots.txt, который был рассмотрен выше. Обо всем этом я написал в новой статье где я считаю создал более правильный robots.txt для сайта на joomla

 

Комментарии  

 
#13 zxcv 12.11.2012 12:49
Правда : статейка пользительная
Цитировать
 
 
#12 Marina 02.10.2012 09:52
Вопрос не много не по теме, но тоже про индексацию. Как в joomla 2.5 можно добавлять к ссылкам теги nofollow и noindex? При ручном проставлении в редактор он их удаляет!
Цитировать
 
 
#11 Марина 31.07.2012 14:50
Цитирую avadon7:
Цитирую Марина:
А Disallow: /images/ - это означает что папка изображений закрыта от индексации!??? а если мне наоборот нужно чтобы изображения отражались в поисковике это нужно удалить данную строку?

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


По прежнему - это в смысле после удаления строки или наоборот!? :-)
Цитировать
 
 
#10 avadon7 30.07.2012 22:34
Цитирую Марина:
А Disallow: /images/ - это означает что папка изображений закрыта от индексации!??? а если мне наоборот нужно чтобы изображения отражались в поисковике это нужно удалить данную строку?

Не переживайте, все картинки что размещены на страницах вашего сайта, по прежнему будут доступны для индексации. :-)
Цитировать
 
 
#9 Марина 30.07.2012 14:32
А Disallow: /images/ - это означает что папка изображений закрыта от индексации!??? а если мне наоборот нужно чтобы изображения отражались в поисковике это нужно удалить данную строку?
Цитировать
 
 
#8 Гость 08.11.2011 18:01
А как запретить индексировать отдельные слова? ВОт например я не хочу чтоб он учитывал слова "коментировать, читать далее, подробнее" и прочую не имеющую смысла лабуду. Ведь олучается что для гугла у меня сайт о "подробне" так как єто слово встречается у меня наиболее часто!
Цитировать
 
 
#7 Гость 04.05.2011 09:48
Спасибо за отличную статью :lol:
Цитировать
 
 
#6 Гость 10.04.2011 23:30
Да, и еще забыл спросить, являются ли мои видео ролики с ютюба (по средствам компонента hwdVideoShare) плагиатом
(или как правильно...дублем )) ??? И если да, то Может есть смысл закрыть полностью от индексации компонент и
продвигать лишь уникальные статьи... а если закрыть, то как ????
Цитировать
 
 
#5 Гость 10.04.2011 23:29
Друзья, помогите, кто может, новичку ! Есть сайт timflair.ru
На сайте порядка 900 видео (с ютюба) и около 50 статей (из них только 10 (пока)) уникальные,
ост. копии с других сайтов (людям в озноком. целях). Яндекс же проиндексировал 19000 страниц !!!!
По началу не парило, но в последнее время начал терять позиции по главным запросам.
Сделал свой файл robots. Не могли вы его посмотреть и
сказать правильно ли я запретил к индексации каталоги и статьи (две последнии) ??
И может посоветуете,что еще следут скрыть от роботов ??? Копированные статьи я скрываю через noindex,nofollo w ....
Буду вам безмерно благодарен !! Я сайт сам делал, но далеко не ас))) все методом тыка и помощи яндекса )))
Цитировать
 
 
#4 avadon7 14.02.2011 10:35
Цитирую PACS:
Внешних. Доступа нет. Через яху как?

идете сюда - http://siteexplorer.search.yahoo.com/

в верхнее поле вводите полный url сайта, ну с html:// в смысле ... жмете explore url он выдаст вам нужную инфу. Жмете кнопку inlinks, ну а там уже думаю сами разберетесь.
Цитировать
 
 
#3 Гость 11.02.2011 20:48
Внешних. Доступа нет. Через яху как?
Цитировать
 
 
#2 avadon7 11.02.2011 15:49
Цитирую PACS:
Кто знает, чем надёжнее ссылки на сайт посмотреть? Спасибо.

о каких ссылках идет речь? о внешних? Если так то можно через yahoo, если доступа к сайту нет. Если есть можно через яндекс.вебмастер. или вы о другом?
Цитировать
 
 
#1 Гость 02.02.2011 02:10
Кто знает, чем надёжнее ссылки на сайт посмотреть? Спасибо.
Цитировать