24,082 просмотра

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

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

  • Host: для указания основного хоста для Яндекса
  • Sitemap: для указания адреса карты сайта
  • Crawl-Delay: для указания минимальной задержки между индексацией страниц (не для всех поисковиков).

Также есть директива DisallowAllow как противоположная). Именно о них и пойдет речь в данной статье.

С какими проблемами сталкиваются вебмастера, используя robots.txt?

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

Пример индексации закрытых в robots.txt страниц

Если обратиться к справке Google, то можно видеть, что robots.txt — это не правило, а рекомендация. И она означает “не сканировать страницу”, а не “не добавлять её в индекс”. Страница по прежнему может попасть в индекс, если на неё была найдена ссылка внутри сайта или где-то на внешнем ресурсе.

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

Для закрытия дублей страниц лучше использовать внутренние средства CMS, а не стараться упростить себе жизнь файлом robots.txt. Тем более, что файл может по каким-то причинам быть недоступен (перенесли на другой сервер, забыли, переименовали и так далее) и в таком случае все закрытое становится резко открытым (наверное как в случае с прошлой утечкой информации из wiki.yandex-team.ru).

Во-вторых, закрывая всё подряд, можно случайно закрыть важные вещи. Например, закрывая в Wordpress всю папку /wp-content/, можно остаться без трафика по изображениям, которые хранятся в /wp-content/uploads/.

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

Тут хранятся изображения, но в поиске по картинкам их нет:

Здесь хранится много картинок, но их нет в поиске по изображениям

Так что, получается лучше совсем не использовать robots.txt? В некоторых случаях он всё же полезен (особенно, когда мы прописываем главное зеркало для Яндекса).

Для чего я рекомендую использовать robots.txt

  • Для закрытия всего сайта при его разработке
    Чтобы заранее в индекс не попало ничего лишнего.
  • Для закрытия сайта от левых поисковиков.
    Например, Рунетовским сайтам нет смысла показываться в Yahoo! Если в этом поисковике нет целевой аудитории, то можно смело закрывать сайт, дабы не нагружать дополнительно свои сервера.
  • Для закрытия приватных разделов сайта от глаз робота.
    Чтобы приватные данные (типа номера кредитных карт :) пароли или смс-ки пользователей) не попадали в индекс. Хотя логично эти разделы вообще не иметь открытыми на сайте.
  • Для снятия нагрузки на сервер
    Если, к примеру, на вашем очень популярном сайте много функционала по сотрировке товара, или какие-то фильтры, которые требуют больших серверных ресурсов, можно не пускать робота к этим страницам, чтобы снять нагрузку. Хотя, опять же, логино было бы сделать функционал сортировки невидимым для робота в самой CMS, чем перекладывать ответственность на файл robots.txt.

Для чего я бы не рекомендовал использовать robots.txt

  • Для закрытия индексации страниц пейджинга, сортировки, поиска
    От дублей следует избавляться средствами CMS, например, 301 редиректом, тегом rel=canonical (который специально для этого был создан), 404 ошибкой или мета тегом robots noindex.
  • Для удаления уже существующих в индексе страниц
    Частая ошибка вебмастеров, когда пытаются удалить страницы из индекса роботсом. Поисковый робот не сможет переиндексировать страницу и удалить её, если вы закроете к ней доступ через роботс.
  • Для закрытия админ-панели
    Путь к админке виден в роботс. Так на конференции Optimization.by мы с коллегами злоумышленно получили доступ к одной админке сайта про курсовые работы, путь к которой узнали через robots.txt, а пароли были стандартные admin:admin.
  • Для закрытия других страниц, которые вы не хотите видеть в индексе
    Используйте для этого любые другие методы

Любые комментарии приветствуются. Как вы используете свой robots.txt и сталкивались ли раньше с описанными проблемами?

  • 1 Нет
  • 31 Да
  • Мне понравилось!

Если вам понравилась статья, вы можете подписаться на RSS или E-mail рассылку. Для получения обновлений по электронной почте, введите ваш e-mail адрес в эту форму (Доставка от FeedBurner):