- Разумеется, исправлены некоторые баги
- Во внешние библиотеки добавлены два файла — для Sphix версии 1.х и для 2.х
- Конфигурация Sphinx'а доработана с учетом http://livestreet.ru/13482.html
- Наконец, следуя концепции юзер-френдли, предусмотрена автогенерация файла sphix.conf
Не буду здесь описывать установку самого Sphinx, пока будем считать, что те, кто хочет его использовать на своем сайте, знают, как это делать. Опишу лишь настройку плагина. В перспективе будет, конечно, настройка через админку, но пока правим базовый конфиг руками здесь:
/plugins/sphinx/config/config.php. Комментарии там, на мой взгляд, весьма подробные, разберетесь без труда. Но отмечу несколько нюансов:
1) Настройка и тестирование плагина проводились по Sphinx 2.0.8 (последняя стабильная версия)
2) В параметре $config['host'] пишем не просто хост, а хост и порт или просто порт. Примеры:
$config['host'] = '127.0.0.1:9312'; // хост - 127.0.0.1, порт - 9312
$config['host'] = 'localhost'; // хост - localhost, порт - по умолчанию
$config['host'] = '9312'; // хост - по умолчанию, порт - 9312
$config['host'] = '/var/run/searchd.sock'; // подключение через сокет
3) Параметр $config['prefix'] — это НЕ префикс таблиц в базе, это префикс файлов, создаваемых Sphinx'ом4) В $config['path'] нужно указать папку на сервере, куда Sphinx будет складывать свои данные. Вам выбирать, где она будет — в пределах ли корневой папки сайта или где-то в глубинах сервера, главное, чтоб она была, и чтоб Sphinx имел соответствующие права для работы с этой папкой.
5) И, наконец, весьма полезная вещь: после настройки конфиг-файла и активации плагина по адресу site.com/sphinx/config/ Вы можете получить полный текст файла sphinx.conf с учетом всех настроек. Этот файл можно положить в рабочую папку, которую Вы указали в $config['path'] (или куда посчитаете нужным). И, кстати, в той же папке нужно будет создать две подпапки — для данных и для логов. Имена этих подпапок см. в самом верху сгенерированного файла sphinx.conf.
Надеюсь, настройка Sphinx'а теперь будет гораздо проще.
UPD. Забыл сказать еще об одной важной фишке: если при обращении к Sphinx возникают ошибки, то они не улетаю втихую в никуда, а аккуратно складываются в лог ошибок. И их можно увидеть в админке в разделе «Ошибки системы»
На сайтах LS все ищет нормально, на alto пока не получается. Вот мой sphinx.conf
################################################################################
Что мне немного непонятно… вот на двух сайтах LS там у меня две разные базы данных, но префикс у них одинаковый prefix_… На сайте с altocms префикс базы alto_
В файлах модулей поиска прописано
для первого сайта
для второго сайта
Тут я не знаю, что должно быть в правой части вот этого
$config['entity_prefix'] =
какие префиксы непонятно… сейчас у меня там прописаны 'БД'.