Онлайн-руководство разработчика NetCat
Модуль «Поиск по сайту» 13.2.1Начало работы с модулем 13.2.2Язык запросов 13.2.3Способы хранения индекса 13.2.4Интерфейс модуля в панели управления сайтом 13.2.5Области индексирования 13.2.6Области HTML-страниц 13.2.7Области поиска на сайте 13.2.8Индексирование по расписанию, запуск индексирования в фоновом режиме 13.2.9Правила индексирования 13.2.10Постановка задачи переиндексирования в очередь 13.2.11Интеграция модуля в макеты дизайна сайта 13.2.12Простая форма поиска 13.2.13Расширенная форма поиска 13.2.14Вывод результатов поиска 13.2.15Стилизация списка подсказок 13.2.16Расширенные настройки 13.2.17Разработка расширений модуля 13.2.18Обзор архитектуры модуля 13.2.19Обработчики документов различных типов 13.2.20Текстовые фильтры 13.2.21Анализаторы текста 13.2.22Корректировщики запросов 13.2.23Подключение других поисковых систем 13.2.24Решение проблем с поиском 13.2.25Решение проблем с индексированием 13.2.26Справочник API

Способы хранения индекса

В комплекте поставки модуля реализованы два способа хранения индекса: адаптер для библиотеки Zend_Search_Lucene и хранение индекса в базе данных MySQL.

Zend_Search_Lucene

Zend_Search_Lucene является портированной на PHP версией библиотеки Lucene. Преимуществами данной библиотеки являются продвинутый язык запросов, быстрый поиск, компактный размер индекса. Индекс хранится на диске в папке netcat_files/Search/Lucene.

Данный механизм поиска выбран по умолчанию.

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

Хранение индекса в базе данных MySQL

Альтернативным способом является хранение индекса в базе данных MySQL. Данный способ требует гораздо большего объема дискового пространства, но предъявляет меньшие требования к ресурсам сервера при индексировании. Скорость поиска сопоставима со скоростью поиска при использовании Zend_Search_Lucene; индексирование производится несколько быстрее, чем при использовании Zend_Search_Lucene. Поддерживаются все возможности поисковых запросов без ограничений.

Использование других поисковых библиотек

Существует возможность подключения других поисковых библиотек, таких как Solr, Sphinx, Яндекс.Сервер, Яндекс.XML, Google Site Search и т. д. Подробнее см. раздел «Подключение других поисковых систем».

Смена механизма хранения индекса

Для смены поискового механизма измените значение поля SearchProvider на вкладке «Настройки» — «Системные» в панели управления модулем:

  • nc_search_provider_zend — для использования Zend_Search_Lucene
  • nc_search_provider_index — для хранения индекса в базе данных MySQL
Описание проекта