Главная > PHP > Sphinx на Windows 7

Sphinx на Windows 7

Sphinx

Появилась задача установить и настроить поисковый движок Sphinx. Много слышал об этой системе, но никогда не пользовался и если честно, боялся. Думал что все там сложно и долго. Оказалось все не так уж и страшно. Устанавливал я Sphinx на Windows 7.

Я нагуглил несколько статей по установке Sphinx-а. Очень хорошая статья попалась.

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

  1. Я не поменял в конфигах пути. Там стоит что то типа @CONFIGDIR@, нужно поставить реальные пути.
  2. Все вроде заработало, но при запуске из PHP выдавал вот такую ошибку

Query failed: failed to read searchd response (status=2613, ver=11825, len=775172397, read=74).

Гуглил, гуглил и прочитал что ДЕМОН не включен(Проблема была не в этом, но демон тоже был не включен).

Включение демона : Панель управления -> Администрирование -> Службы. И там включаем Демона Sphinx. У меня он называется SphinxSearch, а вообще по умолчанию searchd.

В общем если видите такую ошибку, знайте что вы обращаетесь не к тому порту. В конфиге у вас указан порт listen = 9312, вот к нему и нужно обращаться.

Выглядит это примерно так:

// Создадим объект - клиент сфинкса и подключимся к нашей службе
$cl = new SphinxClient();
$cl->SetServer( "localhost", 9312 );

А я чет подумал что сюда порт MySql нужен, он же 3306.

И так, все установили, и теперь выводить результаты нужно, а выводится только ID. Где то прочитал, что это нормально(ну хз, я в данный момент еще разбираюсь.).

Получаю список ID и вывожу товары. Все отлично! Ура!
Теперь самую малость о режимах:
Существуют следующие соответствия режима:

  • SPH_MATCH_ALL, будут искаться все слова запроса (режим по умолчанию);
  • SPH_MATCH_ANY, будет искаться любое из слов запроса;
  • SPH_MATCH_PHRASE, будет искаться как фраза, требующая идеального соответствия;
  • SPH_MATCH_BOOLEAN, Будет искаться по выражению учитывая операторы AND(и), OR(|), NOT(! или -) и скобки для группировки;
  • SPH_MATCH_EXTENDED, поиск по сложной формуле;
  • SPH_MATCH_FULLSCAN, Ничего по тексту не ищем, но фильтры и группировки будут применяться.

Ну пока мне этого достаточно. Дальше мне нужно будет глубже изучить Sphinx, вот тогда напишу еще заметочку, может 2 =)
Удачи!

Поделиться в соц. сетях

Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс

PHP ,

  1. Комментариев пока нет.
  1. Трекбеков пока нет.