LINUX.ORG.RU

Как настроить поиск sphinx ?

 , , ,


0

1

Настраиваю поиск sphinx в Битрикс на centOS. Поиск работает на сайте, необходимо реализовать вывод таких запросов тшлу – nike, найк – nike, и т.д.

Файл sphinx.conf

#!/usr/bin/php # Ansible managed # Minimal Sphinx configuration for Bitrix # # Include site search db <?php

$includeConfig = «\n\n»; $confDir = «/etc/sphinx/bx/search_index»; if(is_dir($confDir)) { if($dh = opendir($confDir)) { while(($file = readdir($dh)) !== false) { if($file == "." || $file == "..") continue;

$includeConfig .= file_get_contents($confDir.'/'.$file).«\n\n»; } closedir($dh); } }

echo $includeConfig;

?> searchd { listen = 9312 listen = 9306:mysql41 log = /var/log/sphinx/searchd.log query_log = /var/log/sphinx/query.log pid_file = /var/run/sphinx/searchd.pid binlog_path = /var/lib/sphinx

read_timeout = 5 max_children = 30 max_matches = 1000 seamless_rotate = 1 preopen_indexes = 1 unlink_old = 1 workers = threads # for RT to work binlog_max_log_size = 512M # 2 - flush every transaction, sync every second. Good performance, and every committed transaction is guaranteed to be saved in case of daemon crash. # 1 - flush and sync every transaction. Worst performance, but every committed transaction data is guaranteed to be saved binlog_flush = 2 rt_flush_period = 3600 }

indexer { lemmatizer_cache = 128M

} common { lemmatizer_base = /usr/share/sphinx/dicts }

Файл default.conf

# Ansible managed # IndexName: default # SiteName: default # DBName: sitemanager0 index default { # Main settings type = rt path = /var/lib/sphinx/default/index wordforms = /var/lib/sphinx/data/wordforms.txt docinfo = inline

# Choose appropriate type of morphology to use #morphology = lemmatize_ru_all, lemmatize_en_all, lemmatize_de_all, stem_enru morphology = stem_enru, soundex

# These settings are used by bitrix:search.title component dict = keywords prefix_fields = title infix_fields = min_prefix_len = 2 enable_star = 1

# All fields must be defined exactly as followed rt_field = title rt_field = body rt_attr_uint = module_id rt_attr_string = module rt_attr_uint = item_id rt_attr_string = item rt_attr_uint = param1_id rt_attr_string = param1 rt_attr_uint = param2_id rt_attr_string = param2 rt_attr_timestamp = date_change rt_attr_timestamp = date_to rt_attr_timestamp = date_from rt_attr_uint = custom_rank rt_attr_multi = tags rt_attr_multi = right rt_attr_multi = site rt_attr_multi = param

# Depends on settings of your site # For UTF use utf-8 else sdcs charset_type = utf-8 }

Файл wordforms.txt

найк > nike тшлу > nike

Файл wordforms.txt создавали сами, папку data, в которой лежит также создавали сами. Путь к нему wordforms = /var/lib/sphinx/data/wordforms.txt в файле default.conf прописывали так же сами.

Рестарт поиска делали и переиндексацию сайта делали. Но поисковые запросы, указанные в файле wordforms.txt не работают.



Последнее исправление: cetjs2 (всего исправлений: 1)

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.