Почему Яндекс не индексирует сайт

Иногда при создании сайта бывает так, что вроде бы и контент полезный и уникальный, и сайт сделан качественно, однако поисковые системы (особенно Яндекс) не хотят его индексировать. Отчего такое может быть? Скорее всего, на сайте есть проблемы технического характера, которые с пользовательской точки зрения не видны. Далее будут описаны некоторые наиболее типичные проблемы, из-за которых сайт может не индексироваться.


Первое, с чего следует начать — зайти в сервис Яндекс.Вебмастер (и добавить туда сайт, если вы этого еще не сделали) и проверить раздел "Исключенные страницы", а также то, что индексация сайта не запрещена через robots.txt.

Затем проверьте, корректно ли выдается страница ошибки 404 ("страница не найдена"). Очень часто проблемы с индексацией бывают тогда, когда при заходе на несуществующую страницу происходит редирект куда-либо, или же при некорректной работе CMS. Чтобы проверить, выдается ли ошибка 404 для несуществующих страниц, можно воспользоваться сервисом Яндекс "Проверка ответа сервера". Введите там адрес какой-либо несуществующей страницы вашего сайта. Если в качестве ответа выдастся код статуса HTTP: "404 Not Found", то все в порядке, если же какой-то другой (кроме 410), то нужно принять меры, чтобы выдавался статус 404. Как правило, для этого нужно прописать в файле .htaccess строку ErrorDocument 404 имя_файла_со_страницей_ошибки (при этом желательно сделать так, чтобы файл со страницей ошибки по дизайну совпадал с основным сайтом и содержал ссылку на главную страницу или на оснонвые разделы сайта), однако в некоторых случаях может потребоваться и настройка или редактирование кода CMS.

Далее следует проверить доступность всех страниц на сайте для роботов. Для этого можно воспользоваться программой Xenu Links Sleuth, чтобы посмотреть, до каких страниц сайта могут добраться поисковые роботы, а до каких — нет. Также эта программа помогает выявить наличие неработающих ссылок, большое количество которых также может быть причиной того, что сайт не индексируется.

Затем необходимо проверить выдачу заголовков Content-Length и Last-Modified. Наличие Last-Modified можно увидеть с помощью все той же "Проверки ответа сервера", а Content-Length проверить с помощью упоминавшейся уже утилиты wget, введя wget адрес_страницы, и сравнив длину скачанного файла с тем, что wget напишет в качестве Length (обычно если с Content-Length имеются проблемы, wget надолго "застревает" в конце скачивания файла и пишет про таймаут). Для исправления этих заголовков обычно требуется редактировать код CMS, для решения проблем с Content-Length может помочь отключение GZIP-сжатия в настройках.

Также индексации сайта может мешать защита от DDoS-атак у хостера, которая может закрывать доступ поисковому роботу, если тот нагружает сайт. Можно написать хостеру и поинтересоваться, не было ли блокировки доступа к сайту, а также проверить, нет ли ошибок доступа, в сервисе Яндекс.Вебмастер. Если есть, то имеет смысл подумать о смене хостера. Также рекомендуется проверить доступность сайта сервисом HostTracker из различных частей Интернета.

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