Оптимизация сайта под поисковые системы и дальнейшее поисковое продвижение, семантическое ядро, индексация сайтов – robots.txt, мета-тег robots и внутренние ссылки

Привет, друзья. Ни для кого из нас не секрет, что последовательность слов в ключевой фразе играет важную роль, и порой не просто важную, а критическую. Проверяете ли вы как-то правильный порядок слов или отдаете это на откуп логике и здравому смыслу? А ведь очень часто наша логика ошибается…

Короче говоря, пользуясь привычным вордстатом от Яндекса, порой недостаточно знать просто уточненную частотность запроса. Об этом я сегодня и расскажу. Для кого-то это будет откровением, а кто-то скажет, что и так все знал.
Так или иначе – это еще один очень полезный инструмент в вашу копилочку.

Итак, давайте снова вернемся к Яндексу и сервису wordstat.yandex.ru.

В нашем понимании (во всяком случае, в моем понимании) при подборе запросов действуют следующие операторы и работают они таким образом:

  • "ключевой запрос" – ключевая фраза взятая в кавычки — определяет и ограничивает количество слов в запросе, но не учитывает их морфологию. Отсекает «длинный хвост».
  • "!ключевой !запрос" – ключевая фраза взятая в кавычки и с восклицательным знаком перед каждым словом в запросе — определяет точно количество слов в запросе и словоформу этих слов. То есть сколько раз именно эту ключевую фразу вводили в поиске.

В понимании Яндекса все это представлено несколько иначе:

  • По запросу "ключевой запрос" будут найдены страницы, где есть подряд два слова: вначале ключевой, затем запрос именно в такой форме.
  • Запрос !ключевой найдет страницы, где слово ключевой встречается только в такой форме с заглавной или строчной буквы; запрос !Ключевой — только с заглавной.

Более подробно и не только об этом можно почитать в официальном хелпе Яндекса про язык запросов.

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

Обычно при подборе запросов для сайта мы сперва парсим wordstat, а потом для полученного списка запросов мы уточняем частотность с помощью всем известных программ KeyCollector или СловоеЁб. Для уточнения как раз используются операторы "" и "!" – обычно на этом и заканчивается исследование запроса.

Давайте рассмотрим случаи, когда на простом уточнении частотности останавливаться не стоит. Это просто для примера, чтобы понять, насколько все может быть драматично.

Возьмем популярный коммерческий запрос «снять квартиру»… Хотя, стоп-стоп, подождите-ка, а может все же «квартиру снять»? А как правильно?

Яндекс нам скажет, что и для "!квартиру !снять" и для "!снять !квартиру" уточненная частотность равна 17204. А согласно вашей логике, как будет правильнее?

Специально убрал статистику под кат, чтобы интереснее было :)

Давайте узнаем

[квартиру снять] — Уровень конкуренции: Высокий — Кол-во запросов в месяц: 210
[снять квартиру] — Уровень конкуренции: Средний — Кол-во запросов в месяц: 8 100

Разница в 38 раз, однако. Да и выдача разная: квартиру снять и снять квартиру

Еще парочка примеров:

Тыц

[iphone купить] — Кол-во запросов в месяц: 1600
[купить iphone] — Кол-во запросов в месяц: 2400

[роллы заказать] — Кол-во запросов в месяц: 110
[заказать роллы] — Кол-во запросов в месяц: 590

А как вы думаете, в каком порядке лучше всего в запросе расставить слова mp3, бесплатно и скачать?

Вот как-то так

[mp3 скачать бесплатно] — Кол-во запросов в месяц: 4 400
[скачать mp3 бесплатно] — Кол-во запросов в месяц: 6 600
[скачать бесплатно mp3] — Кол-во запросов в месяц: 3 600
[mp3 бесплатно скачать] — Кол-во запросов в месяц: 140
[бесплатно скачать mp3] — Кол-во запросов в месяц: 260

Ладно, хватит баловаться. Отвечу на ваш вопрос – откуда данные цифры и что оно обозначают.
Это инструмент подсказки ключевых слов для Google AdWordsKEYWORD IDEAS.

Просто переходите по ссылке и авторизуйтесь. Далее вы увидите что-то в этом духе:

Инструмент подсказки ключевых слов для Google AdWords

Главное не забыть выбрать Тип соответствия, указав галочкой [Точное].

В столбце «Кол-во запросов в месяц» указывается число поисковых запросов в месяц для ключевого слова. Для каждого ключевого слова наша система указывает среднее число поисков за 12 месяцев с учетом выбранных местоположений, языков и устройств.

Это позволит нам совершенно точно определить последовательность слов в запросе, а так же оценить, насколько велика разница. Но эти цифры актуальны для Гугла, и мне кажется, что для Яндекса будут примерно такие же пропорции.

Но есть еще один интересный вопрос – если Яндекс для любой последовательности показывает одну и ту же цифру, то что означает эта цифра? Мне кажется, что это должна быть сумма всех запросов в любой последовательности – это было бы логично. Как думаете?

Блокировка и удаление страниц с помощью файла robots.txt

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

Сразу приведу несколько выдержек из справки для вебмастеров от Google:

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

Файл robots.txt необходим только в том случае, если на вашем сайте есть содержание, которое не следует включать в индекс поисковых систем. Если вы хотите, чтобы поисковые системы включали в свои индексы все содержание вашего сайта, файл robots.txt (даже пустой) не требуется.

Хотя Google не сканирует и не индексирует содержание страниц, заблокированных в файле robots.txt, URL-адреса, обнаруженные на других страницах в Интернете, по-прежнему могут добавляться в индекс. В результате URL страницы, а также другие общедоступные сведения, например текст ссылок на сайт или заголовок из каталога Open Directory Project (www.dmoz.org), могут появиться в результатах поиска Google.

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

Кстати, в руководство Гугла стоило бы добавить, что не только «URL-адреса, обнаруженные на других страницах в Интернете», но и внутренние ссылки приводят к индексации запрещенных страниц, но об этом чуть позже.

На удивление, информация обо всех адресах хранится в Гугле, наверное, веками. У меня есть сайт, на котором уже лет 5 назад сменилась CMS, а вметсе с ней и все url, и старых адресов уже нигде нет, но Гугл помнит эти адреса если пошерстить доп. индекс :)

В Яндексе с этим дела получше, все страницы, закрытые через роботс, НЕ попадают в основной индекс Яндекса, однако роботом просматриваются и загружаются, это наглядно видно в панели вебмастера, где, например, можно наблюдать такое: Загружено роботом — 178046 / Страниц в поиске — 72437. Разумеется, причина такого расхождения аж в 100к страниц не полностью следствие запрещения страниц через robots.txt, здесь есть и 404 ошибки, например, и другие неполадки сайта, которые могут случаться по различным причинам.

Но это не страшно, вот выдержка из руководства для вебмастеров от Яндекса:

В разделе «Исключённые страницы» отображаются страницы, к которым обращался робот, но по тем или иным причинам принял решение не индексировать их. В том числе, это могут быть уже несуществующие страницы, если ранее они были известны роботу. Информация об причинах исключения из индекса хранится в течение некоторого времени, пока робот продолжает их проверять. После этого, если страницы по-прежнему недоступны для индексирования и на них не ведут ссылки с других страниц, информация о них автоматически удаляется из раздела «Исключённые страницы».
Наличие и количество исключенных страниц не влияет на ранжирование сайта в поиске по запросам.

По аналогии с Гуглом тут имеет место быть влияние внешних/внутренних ссылок.

Резюмируя вышесказанное:

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

Для Google robots.txt частично запрещает индексацию страниц, робот их загружает и может отображать в дополнительном индексе, закрытые страницы не отображаются в основном индексе, но все они доступны при изучении дополнительной выдачи (supplemental). Насколько это плохо или хорошо — не известно — в мануалах Гугла такой информации не нашлось. Надеюсь, что это никак не влияет на ранжирование в плохую сторону.

Рекомендую к прочтению:

Плавно переходим к следующему пункту про метатег robots.


Использование метатега robots для блокирования доступа к сайту

Данный метод запрета индексации страниц сайта встречается гораздо реже в повседневной жизни. Как следствие происходит это из-за что разработчики большинства CMS просто не обращают на это внимания/забывают/забивают. И тогда ответственность за поведение роботов на сайте полностью ложится на плечи вебмастеров, которые в свою очередь обходятся простейшим вариантом – robots.txt.

Но продвинутые вебмастера, которые в теме особенностей индексации сайтов и поведения роботов, используют метатег robots.

И снова небольшая выдержка из руководства от Google:

Чтобы полностью исключить вероятность появления контента страницы в индексе Google, даже если на нее ссылаются другие сайты, используйте метатег noindex. Если робот Googlebot начнет сканировать страницу, то обнаружит метатег noindex и не станет отображать ее в индексе.

Внушает оптимизм, не правда ли? И еще:

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

Следовательно, все страницы, которые мы хотим запретить к индексации, а так же исключить их из индекса, если они уже проиндексированы (насколько я понял, это касается и доп. индекса Гугла), необходимо на всех таких страницах поместить метатег <meta name="robots" content="noindex">. Что еще более важно, эти самые страницы не должны быть закрыты через robots.txt!

Немного побуду кэпом и расскажу, какие еще значения (content="…") может принимать мататег robots:

  • noindex – запрещает индексацию страницы
  • nofollow – запрещает роботу следовать по ссылкам на странице
  • index, follow – разрешает роботу индексацию страницы и переход по ссылкам на этой странице
  • all – аналогично предыдущему пункту. По большому счету, бесполезная директива, эквивалентна отсутствию самого метатега robots
  • none – запрет на индексацию и следование по ссылкам, эквивалентно сочетанию noindex,nofollow
  • noarchive – запрет поисковику выводить ссылку на кеш страницы (для Яндекса это «копия», для Google это «сохраненная копия»)

Так как в справке Яндекса нижеследующие параметры не описаны, то они, скорее всего, там и не сработают. Так что эти параметры только для Google:

  • noimageindex – запрет на индексацию изображений на странице
  • nosnippet – запрет на вывод сниппета в результатах поиска (при этом так же удаляется и сохраненная копия!)
  • noodp – запрет для Google на вывод в качестве сниппета описания из каталога DMOZ

Вроде все, осталось только сказать, что количество пробелов, положение запятой и регистр внутри content="…" здесь не играет никакой роли, но все же для красоты лучше писать как положено (с маленькой буквы, без пробелов и разделяя атрибуты запятой).

Короче говоря, чтобы полностью запретить индексацию ненужных страниц и появление их в поиске необходимо на всех этих страницах разместить метатег <meta name="robots" content="noindex,nofollow">.

Так что если вам известны все страницы (наборы страниц, категории и т.д.), которые не должны попасть в индекс и есть доступ к редактированию их содержания (конкретно, содержания внутри тега <head> </head>), то можно обойтись без запрещающих директив в файле robots.txt, но разместив на страницах метатег robots. Данный вариант, как вы понимаете, является эффективным и предпочтительным.

Рекомендую к прочтению:

Итак, у нас остался последний нераскрытый вопрос, и он о внутренних ссылках.


Влияние внутренних ссылок на индексацию сайта

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

А что же делать? При любом варианте запрета индексации ссылок (rel=”nofollow”) и страниц (robots.txt, meta robots), вес сайта просто теряется, утекает на закрытые страницы.

Вариант №1. Большинство распространенных CMS имеют возможность использования специальных тегов (в DLE точно это есть, я сам этим очень активно пользуюсь) при создании шаблонов оформления, которые позволяют регулировать вывод определенной информации. Например, показывать какой-либо текст только гостям или группе пользователей с определенным id и т.д. Если таких тегов вдруг нет, то наверняка на помощь придут логические конструкции (такие конструкции есть в WordPress, а так же форумных движках IPB и vbulletin, опять же, я сам пользуюсь этими возможностями), представляющие из себя простейшие условные алгоритмы на php.

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

Но бывают такие моменты, что ссылку нельзя скрыть или удалить, потому что она нужна, и нужна сразу всем – гостям, пользователям… А вот роботам не нужна. Что делать?

Вариант №2. В редких случаях (хотя последнее время все чаще и чаще) бывает необходимо, чтобы ссылки или даже целые блоки сайта были недоступны и невидны роботам, а вот людям отображались и работали в полной мере, вне зависимости от групп и привилегий. Вы уже, наверное, догадались, что я говорю про сокрытие контента при помощи JavaScript или AJAX. Как это делается технически, я не буду расписывать, это очень долго. Но есть замечательный пост Димы Dimox’а о том, как загрузить часть контента с помощью AJAX на примере WordPress (линк). В примере рассказывается про подгрузку целого сайдбара, но таким же методом можно подгрузить одну только ссылку, например. В общем, немного покопаетесь и разберетесь.

Так вот, если хочется какую-то часть контента роботам не показывать, то лучший выбор – JavaScript. А после того как провернете всю техническую часть, проверить это на работоспособность поможет замечательный плагин для FireFox под названием QuickJava. Просто с помощью плагина отключите для браузера обработку яваскрипта и перезагрузите страницу, весь динамически подгружаемый контент должен пропасть ;)
Но помните, что тут тоже надо знать меру!


И, кстати, еще парочка интересных моментов, которые необходимо знать:

Яндексу в индексации сайтов помогает Яндекс.Метрика, которая автоматически пингует в индекс все посещенные страницы, на которых установлен код Метрики. Но эту функцию можно отключить при получении кода счетчика, установив соответсвующую галочку.

Возможно как то в индексации замешаны Яндекс.Бар и сборка браузера Хром от Яндекса, но в этом я не уверен.

Но вот для Гугла есть информация, что роль поискового робота выполняет сам браузер Google Chrome. Такие уж они хитрецы.

Так что, как видим, скрыть информацию от роботов почти невозможно, если не предпринимать специальные меры.


Итоги — или что сделать, чтобы стало все круто?

Наконец-то я могу подвести итог сегодняшнего огромного поста, и он будет кратким.

Чтобы улучшить качество индексации сайта, необходимо:

  • Скрыть от гостей (к ним относятся и роботы) ссылки, которые им не нужны или не предназначены.
  • Если ничего из перечисленного невозможно или не получается, то хотя бы необходимо закрыть ссылки на ненужные страницы атрибутом rel=”nofollow”. Хоть польза от этого и сомнительная, но все же…
  • Страницы, которые не должны быть проиндексированы и не должны попасть в индекс поисковых систем, стоит запрещать при помощи метатега robots и параметра noindex: <meta name="robots" content="noindex">
  • Страницы, содержащие тег robots не должны быть запрещены к индексации через robots.txt

Что даст нам весь этот «улучшайзинг»:

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