Статьи

Выбор поисковой системы для своего сайта

Какое знакомое чувство разочарования. Вы прекрасно знаете, что та информация, которую вы ищите, есть на этом сайте. Вы кликаете на ссылку, затем на другую, на третью…
Затем возвращаетесь на главную страницу и заходите в другой раздел сайта. Проверив с десяток ссылок, вы все еще не можете найти то, что искали. Вы возвращаетесь в Google и переходите к следующему сайту в списке. Наконец вы находите сайт с внутренней поисковой системой. Вы вводите нужный термин и - voila! – вся необходимая информация появляется на экране через пару секунд.
 
 
Если вы хотите, чтобы посетители получали результат в считанные секунды, возможно, вам
стоит внедрить в ваш сайт внутреннюю систему поиска. Поисковые системы не только делают информацию на вашем сайте более доступной, благодаря им, посетители проводят больше времени на вашем сайте. Внутренняя система поиска может быть просто  необходимостью, если ваш сайт содержит более 100 страниц, имеет сложную иерархическую структуру или непродуманную навигацию. Если основной целью вашего сайта является предоставление подробной информации по многочисленным темам, то вынуждать посетителя загружать весь ваш сайт лишь для того, чтобы найти необходимую информацию, было бы крайне неэффективно. Даже если ваш сайт является чисто развлекательным, было бы неплохо предоставить посетителям возможность найти на нем что-либо конкретное.
 

Локальная или внешняя система? 

В качестве инструмента для поиска вы можете выбрать либо внешнюю систему поиска (т.е.
систему, расположенную на стороннем сервере), либо локальную поисковую систему. Если ваш сайт расположен на стороннем сервере, вы можете воспользоваться бесплатными или платными услугами компаний, которые размещают поисковые системы на своих серверах.
 
Для этого вам лишь нужно зарегистрироваться на их сайте.
Вот несколько примеров таких систем поиска:
 
У удаленных поисковых систем есть несколько преимуществ. Затраты на услуги хостинговых компаний незначительны, поскольку сама поисковая система и ее сопровождение часто предоставляются бесплатно. Кроме того, индексные файлы хранятся на стороннем сервере, и вы значительно экономите пространство на диске. При этом вероятность отказа системы поиска очень мала, поскольку первостепенной задачей компаний, предоставляющих услуги хостинга, является поддержание поисковых систем в рабочем состоянии.
 
Основным недостатком систем поиска, расположенных на стороннем сервере, является то, что у вас мало возможностей для контроля самого процесса индексирования и вы не можете менять код, добавлять новые опции или настраивать вашу поисковую систему.
 
Если вы решили остановить свой выбор на локальной поисковой системе, то вам нужно просто установить систему поиска на вашем сервере и настроить ее самостоятельно. Преимущество использования локальной системы заключается в том, что вы можете не беспокоиться о конфиденциальности ваших данных и сами контролировать процесс индексирования и результаты поиска; кроме того, у вас есть возможность внедрять новые функции.
Недостаток же таких систем в том, что вся ответственность за индексирование и сопровождение поисковой системы лежит на вас, а индексные и установочные файлы будут располагаться на вашем жестком диске. Возможно, вам также придется взять на себя затраты по приобретению самой поисковой системы, хотя существуют и бесплатные, свободно распространяемые приложения.
 
Начало работы
Встроить систему поиска в ваш сайт не составит никакого труда, если вы правильно  подготовите сам сайт. При настройке вашего сайта вам следует обратить внимание на несколько важных моментов.
 
Проблемы установки
У вас должно быть достаточно свободного места на диске для индексных файлов, и сервер должен иметь соответствующую производительность; кроме того, вам необходимо обновлять индексные файлы каждый раз, когда вы вносите какие-либо изменения в ваш сайт. Вам также нужно установить соответствующую программу для обработки PHP кода, которая стоит на самом сервере, и MySQL, если вы используете базу данных MySQL для хранения индексных файлов.
 
Существует несколько поисковых систем, которые можно конфигурировать с помощью графического интерфейса браузера. Для использования других систем вам может потребоваться доступ к командной строке с правами root-пользователя.
 
Страницы
Убедитесь, что список с результатами поиска выдается именно в том виде, в котором вы хотите, включая соответствующие заголовки страниц, мета-теги "description" и сам текст.

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

Некоторые поисковые системы отображают содержание мета-тегов "descriptions" в списке
результатов поиска. Если ваша поисковая системы использует "descriptions", убедитесь, что они точно описывают содержание страницы. Например, если ваш сайт посвящен местной кухне и вы хотите добавить мета-тег "description" для страницы о ресторанах, вам необходимо вставить примерно такое описание:
<META NAME="description" CONTENT="List of restaurant in my area with available specialties, customer opinions and general info.">
 
Хотя большинство общедоступных поисковых систем, таких как Google, больше не используют мета-теги "keywords" в виду того, что некоторые веб-мастера задавали заведомо неправильные ключевые слова, эти мета-теги могут быть очень полезны при работе с локальными системами поиска, где не существует такого риска. Используйте ключевые слова, если вы хотите, чтобы ваша поисковая система выдавала наиболее точные результаты.
Включайте в список ключевых слов любые слова, которые, по вашему мнению, отражают содержание данной темы. Для нашего примера можно использовать такие ключевые слова:
<META NAME="keywords" CONTENT="food, Washington DC, Pata Mia, Olive Garden, Italian, pasta, etc. ">.
Если кто-то будет искать эти слова, то данная страница будет занимать одно из первых мест в результатах поиска.
 
Заголовки также очень важны, если вы хотите, чтобы поисковая система выдавала хорошие результаты. Многие поисковые системы используют именно заголовки для определения рейтинга данной страницы.
 
Индексирование
Поисковый робот (или индексатор поиска) анализирует страницы и составляет индекс (обычно храня его в базе данных) для упрощения процесса поиска, так как поиск по самому сайту занимает очень много времени. Если поисковая система получает доступ к страницам вашего сайта через общение с сервером, то это называется "crawling" или "spidering". Если она имеет доступ непосредственно к директории и структуре файлов на вашем диске, то это “file-system-based crawling” (т.е. считывание сайта на основе файловой системы). Робот должен иметь возможность сохранять файлы в директории на веб-сервере, где их потом может обнаружить поисковая система при получении запроса от посетителя сайта.
Обычно система поиска создает инвертируемый индекс.
 
Этот метод подразумевает создание списка всех слов из текста, по которому выполняется поиск. Поисковая система также использует пару (key, pointer) для хранения информации о расположении каждого слова. Здесь key служит для обозначения самого текста, а pointer обозначает местоположение слова в тексте. Таким образом, этот метод состоит в конвертировании текста со словами в список слов, встречающихся в тексте, то есть в инвертируемый индекс. Это в свою очередь позволяет поисковой системе находить необходимые страницы гораздо быстрее, поскольку искать в базе данных слов гораздо легче, чем по самому тексту, где слова также могут повторяться. А база данных позволяет индексировать слово только один раз и при этом сохраняет информацию о всех местоположениях этого слова в тексте. Из-за определенных сложностей в построении инвертируемого индекса скорость индексирования сайта очень часто невелика.
 
Хотя многие роботы считывают информацию с вашего сайта автоматически, вам необходимо обновлять индекс после внесения каких-либо изменений в свой сайт. Также нужно следить за тем, чтобы робот не индексировал файлы, которые должны быть доступны только администратору, иначе информация из этих файлов также может попасть в результаты поиска.
 
Более подробную информацию об индексировании можно прочитать на сайтах
Inverted Index Language Shootout (http://www.kimbly.com/code/invidx),
NIST`s Inverted Index explanation (http://www.nist.gov/dads/HTML/invertedIndex.html).

=====
Автор: Michael Douma
Перевод: Екатерина Шадрина