Немного о поисковой оптимизации

Немного о поисковой оптимизации

Немного о поисковой оптимизации

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

Это тема меня тронула во время настройки поисковой системы CNSearch, которую я использую для поиска по новгородскому региону. Оказывается, большую часть сайтов нельзя проиндексировать полностью — они содержат бесконечное количество страниц.

Как так получилось ?

Проблема тут в основном в некомпетентности программистов, разрабатывающих «движки» сайтов.

Для примера рассмотрим сайт: www.oldport.ru. Заходим в гостевую книгу и в блоке навигации по страницам гостевой книги нажимаем на ссылку «>>». Делать это можно бесконечно и каждый раз, загружается страница с уникальным адресом.

Точно так же ведут себя форумы на базе phpBB и vBulletin, сайты на базе Joomla и phpnuke. Кроме того, есть масса «движков» которые содержат большое количество страниц с дублирующейся информацией или просто страниц без информации. Про идентификаторы сессий (PHPSESSID, sid, ssid и пр.) я вообще молчу.

Решить эту проблему проще всего на стадии разработки «движка» сайта. Если сайт уже готов, или используется «движок» стороннего разработчика, то решить эту проблему на стадии разработки уже не получится. Но кое-что все равно можно исправить. Сделать это можно с помощью файлов robots.txt, мета тегов «noindex» и «nofollow». «Прятанья» ненужных ссылок.

Например, в разы сократить количество индексируемых страниц в форуме, на базе vBulletin, можно добавив следующие строки в файл robots.txt

— robots.txt —————
User-Agent: *
Disallow: /forum/calendar.php
Disallow: /forum/misc.php
Disallow: /forum/external.php
Disallow: /forum/search.php
Disallow: /forum/vB.Sponsors
Disallow: /forum/showgroups.php
Disallow: /forum/online.php
Disallow: /forum/showthread.php?p=
Disallow: /forum/showpost.php
Disallow: /forum/printthread.php
Disallow: /forum/attachment.php
— robots.txt —————

Перечисленные страницы содержат либо несущественную, либо дублирующуюся информацию.

Для той же цели можно использовать мета теги «noindex» и «nofollow». Но помните, чтобы обнаружить теги, поисковая система должна сначала скачать страницу с вашего сайта. По этому вместо использования мета тега «noindex» лучше просто «спрятать» ссылку на несущественную страницу.

Следующий шаг — это проверка корректности индексации сайта с помощью собственной поисковой системы. При этом, решая эту задачу, можно убить еще одного зайца — создать Google Sitemap.

Для этих целей я использую все тот же CNSearch. Это платная система, но для нашей задачи подходит и незарегистрированная версия, так как фронтенд от нее не используется.

Для начала нужно положить фронтенд и индексатор в один каталог, настроить индексатор и фронтенд (об этом можно почитать в руководстве пользователя, которое есть на официальном сайте CNSearch).

После того как настройки поисковой системы выполнены, нужно создать простой shell скрипт:

— sitemap.sh ———————
#!/bin/sh

./indexer mike

export QUERY_STRING=»sitemap=1&password=парольнастатистику»
export REQUEST_METHOD=GET
./search.cgi | tail -n +3 > ../sitemap.xml

rm ./docs.cns
rm ./files.cns
rm ./fulltxt.cns
rm ./index.cns
rm ./stats.log
— sitemap.sh ———————

Сначала запускается индексатор (indexer). Во время индексации выводится список индексируемых страниц. Визуально проверяем этот список. Если сайт содержит бесконечное количество страниц, то индексатор рано или поздно выдаст «To many files» (максимальное количество страниц — задается в настройках индексатора).

После того как произведена индексация, shell скрипт вызывает фронтенд (search.cgi), при этом, эмулируя Веб-сервер, так как фронтент является CGI приложением. После чего, с помощью tail удаляются http заголовки, которые вернул фронтенд. На этом этапе, на выходе мы имеем готовый файл sitemap.

Последний шаг — удаляем файлы поискового индекса — они нам не нужны.

Этот скрипт размещаем в отдельном каталоге и прописываем его в crontab.

После этого иногда заглядываем в файл sitemap.xml и смотрим нет ли там лишних страниц. Сам sitemap отправляем в Google, для ускорения процесса индексации сайта поисковым роботом Google.

Мой sitemap выглядит вот так: https://mikhail.krivyy.com/sitemap.xml. И я точно знаю, что поисковому роботы не понадобится много времени, чтобы произвести индексацию моего сайта.

Комментарии