开篇说下本人对sphinx和coreseek之间关系的理解:coreseek是在sphinx的基础上的一个中文分词插件,也就是说如果你不用coreseek的sphinx集成版本的话,得下载其他的中文分词插件才能进行中文分词;其他的插件我所知道的就是SFC。
本文是一个在sphinx(斯芬克斯)基本运行环境都配置好的基础上来说的;可谓本文是"先走后爬"呀,管他的哟!
coreseek-3.2.13兼容sphinx-0.9.9的配置,可以不经修改,即可直接使用。
不过,为了更好的针对中文进行检索,则需要使用coreseek新增的配置参数,设置中文分词。
以下是中文分词的核心配置,请仔细阅读,应用到自己的配置之中:
source 数据源名称a
{
#......
#该部分的配置,直接采用sphinx的配置,无需更改即可直接使用
#......
}
index 索引名称a
{
#以下部分的配置,直接采用sphinx的配置,无需更改即可直接使用
#......
source = 数据源名称a #对应到source
path = var/data/数据源名称a
docinfo = extern
mlock = 0
morphology = none
min_word_len = 1
html_strip = 0
#......
#以上部分的配置,直接采用sphinx的配置,无需更改即可直接使用
ngram_len的配置需要设置为0!
配制文件示例:
index threadsinfo{
source = info
path = /usr/local/coreseek/var/data/info
docinfo = extern
mlock = 0
morphology = none
#### ........
min_word_len = 2
charset_type = zh_cn.utf-8 #这是关键处
#charset_table = 0..9, A..Z->a..z, _, a..z, U+410..U+42F->U+430..U+44F, U+430..U+44F
min_prefix_len = 0
enable_star = 1
html_strip = 1
ngram_chars = U+3000..U+2FA1F
charset_dictpath=/usr/local/mmseg3/etc #这是关键处
ngram_len = 0 #这是关键处
}