Яндекс и robots.txt

Пост устарел и оставлен тут для истории.

Похоже, что все-таки лыжи не едут. Летом добиться от Яндекса сколько-нибудь вменяемой работы с robots.txt у меня не получилось. Убрал все строчки, которые он мог бы обрабатывать и сайт довольно быстро вернулся к номальной работе, посещаемости и индексируемости.

На праздниках у меня было немного свободного времени и я немного поизучал этот вопрос. Есть у мен еще два сайта, на них установлен WordPress. WordPress сам генерирует по запросу файл robots.txt и отдает примерно такое содержимое:

На одном сайте я довольно давно заблокировал выдачу robots.txt, на втором – оставил все как есть. Отслеживаю оба сайта в Яндекс.Вебмастере. Сайт с заблокированным robots.txt проиндексирован, какое-то количество страниц есть в индексе, в общем все хорошо. Второй сайт, который отдает robots.txt, роботами Яндекса посещается, но страниц в индексе – 0 (ноль).

На выходных посмотрел несколько явно спамных сайтов на WordPress – у большинства выдача robots.txt тем или иным способом заблокирована. Чаще всего просто стоит редирект на главную страницу – закомменирован соответствующий блок в файле rewrite.php.

Очень похоже, что я не единственный наступающий на эти грабли и проблема довольно распространенная.

Поскольку я WordPress обновляю время от времени, помнить о необходимости комментировать строчку мне лень. Я блокирую выдачу robots.txt в файле .htaccess, добавляя еще одно правило RewriteRule. Блок с mod_rewrite в .htaccess получается такой:

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

Зеркала в Яндексе — окончание

Пост устарел. Сейчас все работает как должно.

В общем, манипуляции произведенные с помощью суппорта Яндекса и описанные ранее ни к чему особому не привели. Шаманские пляски с бубном, указание пустой директивы Disallow, указание Diasallow: /cgi-bin, указание Allow: / — видимого эффекта не дали. За это время строчка «Дата последнего обращения робота к сайту:» обновилась дважды, но количество ссылок в индексе не менялось. Это можно было бы списать на глюки панели вебмастера, но посещаемость с Яндекса упала капитально.

При этом в «Инструменте для проверки корректности файла robots.txt» в ответ на любой адрес оптимистично указывалось, что он доступен для индексирования.

«Что, блин, важнее: три буквы или почти 500 ежедневных уников?!» — задал я себе риторический вопрос и выкинул все инструкции, относяциеся к Яндексу из robots.txt. Пусть Яша сам определяет, где у меня зеркало, а где что.

Склеиваем зеркала в Яндексе

Пост устарел и оставлен тут для истории

Лично мне нравятся адреса сайтов с приставкой www. Я эти три буквы автоматом на клавиатуре набираю. Эстет, блин. Однако, я лично знаю немало людей, которые набирают URL без этой приставки. Поэтому предпочитаю, чтоб сайт был доступен как по адресу www.site.com, так и просто site.com. С формальной точки зрения, которой придерживаются поисковые машины, это два разных сайта (компьютера), которые являются «зеркалами».

Большинство поисковиков самостоятельно определяют «главное» зеркало и повлиять на этот выбор довольно затруднительно. Яндексу можно попробовать подсказать, что именно вебмастер считает «главным» — с помощью директивы Host в файле robots.txt, расположенном в корне сайта.

Руководствуясь директивами Яндекса я написал простой файлик robots.txt из двух строк:

Реакция не замедлила себя ждать — сайт выпал из индекса Яндекса вообще. В интерфейсе Яндекс.Вебмастер получилась такая статистика:

И это при том, что две недели назад страниц в индексе было около 10 тысяч! Самое время биться головой об стену, единственная хоть какая-то помощь — Директ.

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

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

Саппорт Яндекса посоветовал добавить перед директивой Host какое-нибудь правило. Не долго думая, запретил индексацию /cgi-bin — все равно у меня там ничего нет. Получилось вот так:

На следующий день ссылки начали появляться в индексе! Правда, похоже, я очень удачно успел к апдейту 25 июня. :-)

Update: Читайте поучительную историю о том, чем все это закончилось.