Файл robots.txt используется вебмастерами для запрета индексации всего того, что не имеет непосредственно отношения к контенту: файлы движка, дубли и прочее. Неправильно составленный роботс.тхт может серьезно усложнить жизнь вашему проекту и по статистике является одной из самых часто встречающихся ошибок во внутренней оптимизации сайтов.
Рассмотрим как же должен выглядеть правильный на мой взгляд файл robotx.txt для интернет магазина на virtuemart 2. Сразу хотелось бы дать ссылки на ресурсы откуда я почерпнул эти знания и выразить авторам благодарность за их материалы.
Про robots.txt применительно к виртуемарту
Начнем с того, что по умолчанию в joomla мы имеем такой robots:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
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/ |
Если все оставить как есть, то все наши товары попросту не проиндексируются поисковыми системами, поскольку стоит запрет на индексацию каталога с компонентами Disallow: /components/, в котором так же находится наш компонент интернет-магазина.
Поэтому в первую очередь необходимо убрать из роботс.тхт данный запрет, но поставить запреты на индексацию все остальных компонентов, которые мы установили. Так же дублируем данные правила для Яндекса, прописываем основное зеркало сайта и указываем путь к карте сайта (прочитать про составление карты сайта для интернет-магазина на виртуерт). Чтобы Ваши картинки так же попали в индекс и принесли дополнительный трафик из поиска по картинкам директорию images так же открываем для индексации.
После всех этих несложных манипуляций у меня получился вот такой файл:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
User-agent: * Disallow: /administrator/ Disallow: /cache/ Disallow: /includes/ Disallow: /components/com_akeeba/ Disallow: /components/com_banners/ Disallow: /components/com_extplorer/ Disallow: /components/com_finder/ Disallow: /components/com_jce/ Disallow: /components/com_mailto/ Disallow: /components/com_newsfeeds/ Disallow: /components/com_search/ Disallow: /components/com_users/ Disallow: /components/com_weblinks/ Disallow: /components/com_wrapper/ Disallow: /components/com_xmap/ 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: /components/com_akeeba/ Disallow: /components/com_banners/ Disallow: /components/com_extplorer/ Disallow: /components/com_finder/ Disallow: /components/com_jce/ Disallow: /components/com_mailto/ Disallow: /components/com_newsfeeds/ Disallow: /components/com_search/ Disallow: /components/com_users/ Disallow: /components/com_weblinks/ Disallow: /components/com_wrapper/ Disallow: /components/com_xmap/ Disallow: /installation/ Disallow: /language/ Disallow: /libraries/ Disallow: /media/ Disallow: /modules/ Disallow: /plugins/ Disallow: /templates/ Disallow: /tmp/ Disallow: /xmlrpc/ Host: site.ru Sitemap: http://site.ru/sitemap |
Если вы хотите обезопасить себя от "доброжелателей", то можно переделать файл немного по-другому. Дело в том, что в представленном выше роботс.тхт перечисляются компоненты, которые закрываются для индексации. Уязвимости этих компонентов могут использовать хакеры для взлома вашего сайта. Чтобы "усложнить" им работу можно использовать такой robots.txt:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
User-agent: * Disallow: /administrator/ Disallow: /cache/ Disallow: /includes/ Allow: /components/com_virtuemart/ Disallow: /components/ 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/ Allow: /components/com_virtuemart/ Disallow: /components/ Disallow: /installation/ Disallow: /language/ Disallow: /libraries/ Disallow: /media/ Disallow: /modules/ Disallow: /plugins/ Disallow: /templates/ Disallow: /tmp/ Disallow: /xmlrpc/ Host: site.ru Sitemap: http://site.ru/sitemap |
Здесь мы запретили к индексации все файлы, находящиеся в дерективе components, но открыли для индексации папку с virtuemart ( Allow: /components/com_virtuemart/)
Представленный robots.txt для связки joomla и virtuemart 2 не претендует на 100% правильность. Буду рад любым уточнениям и дополнениям.
Дмитрий
Спасибо за материальчик! А в последнем варианте роботс.тхт случайно робот с компонента виртуамарта не нахватает лишней "барбитуры" кроме полезной?)
P/S/ Интересно насколько этот движок virtuemart 2 удобен в использовании или лучше по-проще чего найти ?
admin
Не совсем понял, что вы имеете ввиду 🙂
По поводу удобства смотря какой магазин вы хотите делать. Можно и на вордпрес делать неплохие магазины, но функционал там значительно меньший на мой взгляд
Дмитрий
основной вопрос был : А в последнем варианте роботс.тхт случайно робот с компонента виртуамарта не нахватает лишней «барбитуры» кроме полезной?)
admin
Последний и предпоследний вариант по сути ничем не отличаются. На своих сайтах использую предпоследний вариант, лишнего в индексе не замечал:)
Александр
Админ, использовал на своем сайте предпоследний вариант и в индексе куча мусора, так что ваш роботс не совсем катит...)) В индексе куча левых страниц с вот такими окончаниями orderDesc.html?filter_product=, by,product_price.html?filter_product= - что это? Откуда это?
admin
Похоже на страницы, которые появляются после сортировки товара в категории.
Проблема с дублями в vm решается с помощью мета-тега canonical
Страницы с сортировкой не должны попадать в индекс.
Можно дополнить robots, исключив все ссылки, содержащие, например, ?filter_product
https://yandex.ru/support/webmaster/controlling-robot/robots-txt.xml#asterisk-dollar
Юрий
А если домен в зоне "рф", то строка будет выглядеть так?
Host: xn--80aaakgfnic6afl.xn--p1ai
admin
судя по статье нужно прописывать так, как вы написали
Snake 60
А зачем для яндекса отдельно правила прописывать? Ведь запись User-agent: * означает, что правила применяются для ВСЕХ поисковых роботов...
admin
для яндекса отдельно прописал, чтобы указать host
Диман
Благодарю за статью, очень помогла!)
Геннадий
А почему Вы для Яндекса указали путь к карте сайта, а для всех остальных поисковых систем - нет? Думаю, нужно указать.
admin
да, и для остальных можно продублировать
Борис
А нормально что, сначала открывается подпапка, а затем запрещается вся папка, содержащая подпапку? Может поменять местами? Или первые записи обладают более высоким приоритетом?
admin
Лучше сначала перечислить allow
Процитирую 🙂
Борис
А Host запись для других ПС надо дублировать?
admin
Нет, она используется только для яндекса
yrygvay
На форуме видел дополнение к карте, что бы мусора не было в поисковике добавить:
Disallow: /index.php?
Disallow: /index2.php
Disallow: /*keyword= #Поиск по ключевому слову на сайте
Disallow: /*pop=0 #Косяк sh404
Disallow: /*product-search #Результаты поиска
Disallow: /*flypage= #Адреса страниц карточек из результатов поиска по сайту
Disallow: /*cart #Корзина
Disallow: /*feed #Также запрещается RSS и atom
Disallow: /404
Disallow: /*? #все ссылки которые содержат этот знак не индексируются !
Disallow: /*% #запрещает индексацию кириллических url
admin
судя по строке
это добавление относится в первому виртумарту
yrygvay
а как именуется карточка товара во VM2 ?
yrygvay
но это применимо если Sh404 стоит. но по аналогии можно и для обычного Sef сделать!
Вадим
Всё исправил но товар так же не индексируется в веб мастере Яндексе Документ является неканоническим. Как исправить
admin
посмотрел этот товар
ссылка является канонической
Volodymyr
Большая просьба к админу. Напишите статью о склеивании дублей в VM2, и как бороться с дублями.
Владислав
Полностью с тобой согласен, не хватает этой статьи.
Андрей
Конечно очень извинюсь. Но ваш Allow как мертвому припарка. Жаль конечно, что не многие хотя бы посещали проф курсы сео-мастеров. Ни один поисковик правильно не сможет данную команду понять, так как такой функции просто не предусмотрено в спецификации.
Еще хотел уточнить, что сканирование товаров идет отлично и при закрытом components, так как сама система гинерит при включенном сеф-е немного по другому. Так что за это можете не беспокоится. Не первый магазин создан и могу с уверенностью это утвердить (если конечно с кривыми руками не подходить к проектам).
admin
если верить этой ссылке
"Allow: имеет действие, обратное директиве Disallow — разрешает доступ к определенной части ресурса. Поддерживается всеми основными поисковиками."
Дмитрий
Не понятно,что Андрей имел ввиду : "...так как сама система гинерит при включенном сеф-е немного по другому..."
Андрей
Нужно не верить тому, что пишут сторонние ресурсы, а читать документацию W3C
C уважением.
Дмитрий
Я тоже читал о том что "Allow" не работает, так как файл только запрещает Disallow
admin
проверить будет или нет индексироваться страница можно здесь - http://webmaster.yandex.ru/robots.xml
ghecjd
Подскажите пожалуйста а вот такие строки нужно вписывать в роботс
Или в этих папках содержится что-то нужное для индексации?
И второй вопрос относительно поста
Админ писал, что часть строк относится к первому виртумарту. подскажите пожалуйста, какие именно строки добавить ко второму виртумарту, чтобв поиске оказалось меньше мусора.
Спасибо!
admin
по первой части вопроса можно добавить и эти правила
Виктория
Подскажите, через какое время после настройки robots.txt сайт будет проиндексирован яндексом?
Борис
Это зависит от степени популярности вашего сайта. У меня эффект был замечен примерно через неделю
Mau
Скажите пожалуйста, что здесь нужно вставлять "Host: site.ru"?
Указывать адрес хоста или свой адрес?
Спасибо!
admin
Адрес сайта
Nik
Написал robot.txt по последнему варианту. Проверяю на сайте http://tool.motoricerca.info выдает следующую ошибку
Allow: /components/com_virtuemart/
Unknown command. Acceptable commands are "User-agent" and "Disallow".
A robots.txt file doesn't say what files/directories you can allow but just what you can disallow. Please refer to Robots Exclusion Standard page for more informations.
Неизвестная команда. Приемлемые команды "User-Agent" и "Запретить".
Файл robots.txt не говорит, что файлы / каталоги можно разрешить, но только то, что вы можете запретить. Пожалуйста, обратитесь к исключения роботов Standard странице для получения дополнительной информации.
Как правильно поступить в данной ситуации.
Можно ли доверять данной проверке.
admin
Можете проверить в яндекс.вебмастер и google вебмастер
никаких ошибок с Allow нет
если сомневаетесь, то конечно лучше использовать 1-й вариант
IvanYur
Здравствуйте, два вопроса эта статья подходит и для virtuemart 3 .....?
И второй вопрос у меня стандартно robots.txt еще имеет сначала такой текст
# If the Joomla site is installed within a folder such as at
# e.g. http://www.example.com/joomla/ the robots.txt file MUST be
# moved to the site root at e.g. http://www.example.com/robots.txt
# AND the joomla folder name MUST be prefixed to the disallowed
# path, e.g. the Disallow rule for the /administrator/ folder
# MUST be changed to read Disallow: /joomla/administrator/
#
# For more information about the robots.txt standard, see:
# http://www.robotstxt.org/orig.html
#
# For syntax checking, see:
# http://tool.motoricerca.info/robots-checker.phtml
Я могу удалить этот текст ..?
Как-никак этот текст четко объясняет "зрителю" что сайт сделан на Joomla
admin
Здравствуйте!
Да, для vm3 подходит. Текст можно удалить.
IvanYur
На этом сайте, форуме ( http://cmsheaven.org/blogi/131-pravilniie-robots-txt-dlya-joomla-2-5-3-x/) написано что путь к Sitemap должен быть в XML формате..
У вас я так понимаю прописан в HTML формате
Как должно быть правильно...?
admin
В xml формате правильно.
IvanYur
Disallow: /xmlrpc/
Что это значит ...? у меня в корне сайта нет такой папки, значит ее не нужно прописывать ..?
Я так понимаю что все эти Disallow: это Папки которые находятся в корне сайта, те которые у тебя есть те и переписываешься кроме images. С images можно поступить так Allow: /images/
admin
Статья писалась для vm2 и joomla 2.5. В новых версиях каких-то папок может не быть.
Если папки нет, то ее не нужно создавать.
Алексей
Приведенный пример robots.txt в этой статье актуален для virtuemart 3 ? Или нужно еще что то дописать ?
admin
Для virtuemart 3 актуален.
yarovidze
Добрый вечер. Помогите решитьпроблему, Google не индексирует страницы, выдает предпреждение "Файл Sitemap содержит URL, доступ к которым заблокирован в файле robots.txt".
Вот содержание самого файла
User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Allow: /components/com_virtuemart/
Disallow: /components/
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/
Allow: /components/com_virtuemart/
Disallow: /components/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Host: mysite.ru
# JSitemap entries
Sitemap: http://mysite.ru/index.php?option=com_jmap&view=sitemap&format=xml
admin
Здравствуйте!
Пропишите путь к карте в User-agent: *
yarovidze
Добавил, ситуация та же. Я пробовал даже полность убрать файл robots.txt, и все равно гугл выдает ошибку. Такое чувство что virtuemart полностью закрыт для индексации.
# If the Joomla site is installed within a folder such as at
# e.g. http://www.example.com/joomla/ the robots.txt file MUST be
# moved to the site root at e.g. http://www.example.com/robots.txt
# AND the joomla folder name MUST be prefixed to the disallowed
# path, e.g. the Disallow rule for the /administrator/ folder
# MUST be changed to read Disallow: /joomla/administrator/
#
# For more information about the robots.txt standard, see:
# http://www.robotstxt.org/orig.html
#
# For syntax checking, see:
# http://tool.motoricerca.info/robots-checker.phtml
User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Allow: /components/com_virtuemart/
Disallow: /components/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Sitemap: http://mysite.ru/index.php?option=com_jmap&view=sitemap&format=xml
User-agent: Yandex
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Allow: /components/com_virtuemart/
Disallow: /components/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Host: mysite.ru
# JSitemap entries
Sitemap: http://www.mysite.ru/index.php?option=com_jmap&view=sitemap&format=xml
User-agent: http://masterclimate.ru/index.php?option=com_jmap&view=sitemap&format=xml
admin
Проверить адрес в сервисе от яндекса.
http://masterclimate.ru/index.php?option=com_jmap&view=sitemap&format=xml
он открыт для индексации в robots
Укажите его в Sitemap
yarovidze
http://joxi.ru/D2PgGB6TDd9Nm3
yarovidze
Вот результат
admin
Именно так, стоит зеленая галочка, значит указанный адрес открыт для индексации в robots.
yarovidze
Почему тогда гугл ругается?
admin
Вы отправляли измененный robots?
yarovidze
Переотправил измененный robots.txt, картина та же(
yarovidze
Спасибо большое за совет, все получилось.
admin
Хорошо.
Pavel.F
Здравствуйте
Скажите пожалуйста - по вашему мнению стоит открывать файлы стилей и скриптов для индексации? Вида
User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /cli/
Disallow: /components/
Disallow: /includes/
Disallow: /language/
Disallow: /libraries/
Disallow: /logs/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Allow: /templates/*.css$
Allow: /templates/*.js$
Allow: /templates/*.png$
Allow: /templates/*.gif$
Allow: /templates/*.jpg$
Allow: /templates/*.jpeg$
Allow: /templates/*.ttf$
Allow: /templates/*.eot$
Allow: /templates/*.svg$
Allow: /templates/*.woff$
Allow: /media/*.css$
Allow: /media/*.js$
Allow: /media/*.png$
Allow: /media/*.gif$
Allow: /media/*.jpg$
Allow: /media/*.jpeg$
Allow: /media/*.ttf$
Allow: /media/*.eot$
Allow: /media/*.svg$
Allow: /media/*.woff$
Читаю много спорных мнений касательно допуска к этим видам файлов чтобы поисковые машины видели сайт "как есть" для оценки его UI и мобильной версии.
Спасибо.
admin
Здравствуйте!
Я думаю, что доступ к скриптам и стилям нужно открыть для поисковиков.
Extreme
Скажите пожалуйста, нужно ли что-то добавить в файл robots который у вас в первом посте для корректной работы robots в Virtuemart 3? (цитирую ниже)
User-agent: *
Disallow: /administrator/
Disallow: /cache/
Disallow: /includes/
Allow: /components/com_virtuemart/
Disallow: /components/
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/
Allow: /components/com_virtuemart/
Disallow: /components/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /media/
Disallow: /modules/
Disallow: /plugins/
Disallow: /templates/
Disallow: /tmp/
Disallow: /xmlrpc/
Host: site.ru
Sitemap: http://site.ru/sitemap
тут остается дописать свой сайт в хосте и можно пользоваться и все ок?
admin
В принципе, да, этого должно быть достаточно.
В любом случае после индексации можно будет посмотреть есть ли лишние страницы в индексе и в зависимости от этого поправить robots.txt.
Extreme
1) Скажите пожалуйста, а сколько примерно времени должно пройти до индексации с момента как я заменил Robots на сайте???
2) До этого у меня был вот такой робот, скажите пожалуйста как профессионал, на сколько он был корректный и как много не нужно лезло в поисковики с ним?
User-agent: Yandex
Allow: /templates/*.css
Allow: /templates/*.js
Allow: /templates/*.png
Allow: /templates/*.jpg
Allow: /templates/*.gif
Allow: /media/*.css
Allow: /media/*.js
Allow: /media/*.png
Allow: /media/*.jpg
Allow: /media/*.gif
Allow: /plugins/*.css
Allow: /plugins/*.js
Allow: /plugins/*.png
Allow: /plugins/*.jpg
Allow: /plugins/*.gif
Allow: /images/*.png
Allow: /images/*.jpg
Allow: /images/*.gif
Allow: /components/*.css
Allow: /components/*.js
Allow: /components/*.png
Allow: /components/*.jpg
Allow: /components/*.gif
Allow: /modules/*.css
Allow: /modules/*.js
Disallow: /administrator/
Disallow: /cache/
Disallow: /cli/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /libraries/
Disallow: /logs/
Disallow: /tmp/
Disallow: /admin
Disallow: */cart*
Disallow: */user*
Disallow: /politika-konfidentsialnosti
Host: https://site.ru
3) Еще вчера, до замены вашего робота, заметил в "вебмастере - сводка - обновление поиска" и там увидел что добавились страницы вида - /index.php/boveda-4гр-216-detail?tmpl=component&print=1 Если перейти на них, то это будет словно лист для печати. Так вот, после того как я поставил ваш Robots они больше не будут вылазить? Если будут, то как запретить их отдельно в файле роботс?
4) Где именно посмотреть, после индексации, все страницы которые проиндексировались, как понимаю что в Яндекс Веб Мастере, а где именно там? В каком разделе?
Извините что так много вопросов, буду рад вашему ответу, спасибо заранее
admin
1. Точно не могу сказать, но думаю, что не меньше недели.
2. На первый взгляд все более-менее нормально.
3. Попробуйте
4. В вебмастере должен быть раздел со всеми проиндексированными ссылками, доступен сразу на главном экране.
svoy
Здравствуйте.
Joomla! 3.9.18
VirtueMart 3.6.10 10211
Боролся я с дублями и вот что в итоге состряпал.
Теперь в поиске все человеческие урлы и не одного дубля.
Скажите может что не так сделал?
admin
На первый взгляд все правильно.
Если яндекс вебмастер не выводит никаких предупреждений, то все хорошо.
stelp
Disallow: /*&* а эта директива что закрывает? гугл на нее что то ругается..
admin
Закрывает любые корневые папки, в которых встречается символ &.