Користувальницькькі налаштування

Налаштування сайту


sphinx

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Наступна ревізія
Попередня ревізія
sphinx [2022/09/24 14:39]
127.0.0.1 зовнішнє редагування
sphinx [2024/04/20 17:11]
nightfly
Рядок 1: Рядок 1:
-====== Использование SphinxSearch в качестве альтернативного поискового движка для глобального поиска ======+====== Використання SphinxSearch як альтернативного пошукового рушія для глобального пошуку ======
  
  
Рядок 5: Рядок 5:
  
 \\ \\
-Начиная с версии 0.9.2 появилась альтернатива в виде полнотекстового поиска для модуля globalsearch. \\+Починаючи з версії 0.9.2 з'явилася альтернатива у вигляді повнотекстового пошуку для модуля globalsearch. \\
 \\ \\
-На тестах ведет себя куда быстрее чем jQuery autocomplete который используется в текущей реализации.\\ +На тестах поводиться набагато швидше, ніж jQuery autocomplete, який використовується в поточній реалізації
-Плюс обладает огромной гибкостью при дальнейшем использовании. \\+Плюс має величезну гнучкість при подальшому використанні. \\
  
 Disclaimer: \\ Disclaimer: \\
-//Конечно же, само собой разумеется выполнение всех команд от рута.// \\ +//Звісно ж, само собою зрозуміло виконання всіх команд від рута.// \\ \\ 
-//Хотите от непривилегированного пользователя - внесите соответствующие изменения в конфигурацию.//+//Хочете від непривілейованого користувача - внесіть відповідні зміни в конфігурацію.//
  
-===== Включение SphinxSearch ===== +===== Увімкнення SphinxSearch ===== 
-В alter.ini: \\ \\ +У alter.ini: \\ \\ 
-Опция включающая альтернативный глобальный поиск на базе SphinxSearch. +Опція вмикає альтернативний глобальний пошук на базі SphinxSearch. 
-  SPHINX_SEARCH_ENABLED=0 +  SPHINX_SEARCH_ENABLED=1 
-Хост с SphinxSearch.+Хост зі SphinxSearch.
   SPHINX_SEARCH_HOST="127.0.0.1"   SPHINX_SEARCH_HOST="127.0.0.1"
-Порт для подключения к SphinxSearch.+Порт для підключення до SphinxSearch.
   SPHINX_SEARCH_SQL_PORT="9306"   SPHINX_SEARCH_SQL_PORT="9306"
-Имя пользователя для подключения к SphinxSearch (по умолчанию пустое!).+Ім'я користувача для підключення до SphinxSearch (за замовчуванням порожнє!).
   SPHINX_SEARCH_USER=""   SPHINX_SEARCH_USER=""
-Пароль для подключения к SphinxSearch (по умолчанию пустое!).+Пароль для підключення до SphinxSearch (за замовчуванням порожній!).
   SPHINX_SEARCH_PASSWORD=""   SPHINX_SEARCH_PASSWORD=""
-Имя БД для подключения к SphinxSearch (по умолчанию пустое!).+Ім'я БД для підключення до SphinxSearch (за замовчуванням порожнє!).
   SPHINX_SEARCH_DB=""   SPHINX_SEARCH_DB=""
-Имена индексов (полейв которых производить поиск в SphinxSearch. По умолчанию contract,paymentid,macodt,macminus отключены. Для активации нужно расскоментировать соответствующие строки в конфигурационном файле и дождаться переиндексирования, только потом можно включать их в этой опции.+Імена індексів (полів), у яких здійснювати пошук у SphinxSearch. За замовчуванням contract,paymentid,macodt,macminus відключені. Для активації потрібно розкоментувати відповідні рядки в конфігураційному файлі й дочекатися пере індексування, тільки потім можна вмикати їх у цій опції.
   ;SPHINX_SEARCH_INDEXES="ip,mac,realname,login,fulladdress,mobile,phone"   ;SPHINX_SEARCH_INDEXES="ip,mac,realname,login,fulladdress,mobile,phone"
-Ограничение элементов в ответе при поиске в SphinxSearch. Не стоит задирать этот параметр т.к. будет сказываться на поедании ресурсов браузера javascript-ом.+Обмеження елементів у відповіді під час пошуку в SphinxSearch. Не варто задирати цей параметр, оскільки позначатиметься на поїданні ресурсів браузера javascript-ом.
   ;SPHINX_SEARCH_LIMIT=100   ;SPHINX_SEARCH_LIMIT=100
-Дополнительная сортировка результатов+Додаткове сортування результатів
   SPHINX_SEARCH_SORT="GROUP BY `id`,`title`"   SPHINX_SEARCH_SORT="GROUP BY `id`,`title`"
  
 \\ \\ \\ \\
-Само собой требует+Само собою потребує
   GLOBALSEARCH_ENABLED=1   GLOBALSEARCH_ENABLED=1
      
-===== Масштабируемость =====+===== Масштабованість =====
  
-Стоит отметить возможное горизонтальное расширение с любыми балансировщиками (хотя вряд ли пригодится для подобных нагрузок). \\ +Варто відзначити можливе горизонтальне розширення з будь-якими балансувальниками (хоча навряд чи стане в пригоді для подібних навантажень). \\ 
-Тоже самое про отказоустойчивость. Любые варианты от балансировщиков с health check до VRRP. \\+Теж саме про відмовостійкість. Будь-які варіанти від балансувальників з health check до VRRP. \\
 \\ \\
 \\ \\
-Так же важно понимать что никаких ограничений по поиску со стороны Ubilling нету. \\ +Так само важливо розуміти, що жодних обмежень щодо пошуку з боку Ubilling немає. \\ 
-Если вы хотите добавить кастомный индекс для поиска - нужно две вещи+Якщо ви хочете додати кастомний індекс для пошуку - потрібно дві речі
-  - Создать новый индекс в SphinxSearch + переиндексация. +  - Створити новий індекс у SphinxSearch + пере індексація. 
-  - Добавить ваш индекс в опцию SPHINX_SEARCH_INDEXES.+  - Додати ваш індекс в опцію SPHINX_SEARCH_INDEXES.
  
  
-===== Установка на FreeBSD =====+===== Встановлення на FreeBSD =====
  
-Тестировал на FreeBSD 13.1, 13.012.3\\+Тестував на FreeBSD 14.0, 13.313.2\\
  
-  * Скачиваем бинарники с [[http://sphinxsearch.com/downloads/current/|официального сайта разработчика SphinxSearch]].+  * Завантажуємо бінарники з [[http://sphinxsearch.com/downloads/current/|офіційного сайту розробника SphinxSearch]].
 <code> <code>
 # mkdir /opt # mkdir /opt
Рядок 67: Рядок 67:
 # rm sphinxdata/searchd.state # rm sphinxdata/searchd.state
 </code> </code>
-  * Копируем и правим конфиг. Интересует в основном секция подключения к БД.+  * Копіюємо і правимо конфіг. Цікавить переважно секція підключення до БД.
 <code> <code>
 # cp /usr/local/www/apache24/data/billing/docs/sphinxsearch/sphinx3.conf /opt/sphinx/etc/sphinx.conf # cp /usr/local/www/apache24/data/billing/docs/sphinxsearch/sphinx3.conf /opt/sphinx/etc/sphinx.conf
Рядок 83: Рядок 83:
 </file> </file>
  
-  * Запускаем indexer.+  * Запускаємо indexer.
 <code> <code>
 # /opt/sphinx/bin/indexer --config /opt/sphinx/etc/sphinx.conf --all # /opt/sphinx/bin/indexer --config /opt/sphinx/etc/sphinx.conf --all
 </code> </code>
  
-  * После чего запускаем searchd.+  * Після чого запускаємо searchd.
 <code> <code>
 # /opt/sphinx/bin/searchd --config /opt/sphinx/etc/sphinx.conf # /opt/sphinx/bin/searchd --config /opt/sphinx/etc/sphinx.conf
 </code> </code>
-  * Правим alter.ini под свои реалииПо дефолту принимается что sphinx запущен с биллингом на одном серверено вполне заменив ip адрес на нужный - можете развернуть и на рядом стоящем хостеиртуалке. Важно что USER, PASSWORD, DB - по дефолту пустые. Это не страшно. Это не значит "придумай сам". Так задумано.+* Правимо alter.ini під свої реаліїЗа дефолтом приймається, що sphinx запущено з білінгом на одному серверіале цілком замінивши ip-адресу на потрібний - можете розгорнути і на хості, який стоїть поруч, \ віртуалці. Важливо що USER, PASSWORD, DB - за дефолтом порожні. Це не страшно. Це не означає "вигадай сам". Так задумано.
 <file alter.ini> <file alter.ini>
 SPHINX_SEARCH_ENABLED=1 SPHINX_SEARCH_ENABLED=1
Рядок 104: Рядок 104:
  
  
-===== Установка на Debian GNU/Linux ===== +===== Оновлення індексів ===== 
- +У crontab -e:
-В случае если вы использовали [[setupdebianstaller|Debianstaller]], как нормальный человек - делать вам вообще ничего не нужно. Все уже установлено и настроено. Просто добавьте в ваш crontab индексацию, например так: +
-<code> +
-*/30 * * * *       /opt/sphinx/bin/indexer --config /opt/sphinx/etc/sphinx.conf --all --rotate +
-</code> +
- +
-и включите опцию  +
-<code ini> +
-SPHINX_SEARCH_ENABLED=1 +
-</code> +
- +
-Все, больше на [[setupdebianstaller|Debian Linux]] делать ничего не нужно. Все заработает само по себе. +
- +
-===== Обновление индексов ===== +
-В crontab -e:+
 <file crontab> <file crontab>
 */5 * * * *       /opt/sphinx/bin/indexer --config /opt/sphinx/etc/sphinx.conf --all --rotate */5 * * * *       /opt/sphinx/bin/indexer --config /opt/sphinx/etc/sphinx.conf --all --rotate
Рядок 125: Рядок 111:
  
 ===== Автозапуск ===== ===== Автозапуск =====
-Добавим в /etc/rc.d/billing в секцию start_cmd:+Додамо у /usr/local/etc/rc.d/billing у секцію start_cmd:
  
 <code> <code>
Рядок 132: Рядок 118:
 </code> </code>
  
-Что бы получилось следующее:+Що б вийшло наступне:
  
 <file /etc/rc.d/billing> <file /etc/rc.d/billing>
Рядок 146: Рядок 132:
 </file> </file>
  
-===== Ротация логов ===== +===== Ротація логів ===== 
-Добавим следующие правила в /etc/newsyslog.conf+Додамо такі правила у /etc/newsyslog.conf
  
 <file newsyslog.conf> <file newsyslog.conf>
Рядок 154: Рядок 140:
 </file> </file>
  
-И перезапустим newsyslog:+І перезапустимо newsyslog:
 <code> <code>
 # service newsyslog restart # service newsyslog restart
 </code> </code>
  
-===== Безопасность =====+===== Встановлення на Debian GNU/Linux ===== 
 + 
 +У разі якщо ви використовували [[setupdebianstaller|Debianstaller]], як нормальна людина, - робити вам узагалі нічого не потрібно. Усе вже встановлено та налаштовано. Просто додайте у ваш crontab індексацію, наприклад так: 
 +<code> 
 +*/30 * * * *       /opt/sphinx/bin/indexer --config /opt/sphinx/etc/sphinx.conf --all --rotate 
 +</code> 
 + 
 +і увімкніть опцію 
 +<code ini> 
 +SPHINX_SEARCH_ENABLED=1 
 +</code> 
 + 
 +Усе, більше на [[setupdebianstaller|Debian Linux]] робити нічого не потрібно. Усе запрацює саме по собі. 
 + 
 + 
 + 
 +===== Безпека =====
  
-Вы можете подумать что данного рода информация чувствительная и вы не хотели бы ей делится с посторонними? Собственно пара слов о безопасности. \\ +Ви можете подумати, що такого роду інформація чутлива і ви не хотіли б нею ділиться зі сторонніми? Власне кілька слів про безпеку. \\ 
-Так как в базовом варианте не предусмотрена аутентификация - то стоит ограничить доступность демона директивой listen в sphinx.conf. \\ +Оскільки в базовому варіанті не передбачена аутентифікація - то варто обмежити доступність демона директивою listen в sphinx.conf. \\ 
-Либо же ограничить доступ к нему фаерволом. \\ +Або ж обмежити доступ до нього фаєрволом. \\ 
-Так же хорошим тоном будет создать отдельного юзера в MySQL для поиска и не ходить под рутовым логином и паролем.+Так само хорошим тоном буде створити окремого юзера в MySQL для пошуку і не ходити під рутовим логіном і паролем.
  
sphinx.txt · Востаннє змінено: 2024/04/20 17:11 повз nightfly