怎样为Discuz部署Sphinx全文检索。

2021年9月9日 | 分类: 【源码】

【介绍】

Discuz 支持 Sphinx 全文检索。

【安装】

【设置】

填写 Sphinx 主机名:例如,本地主机填写“localhost”,或者填写 Sphinx 服务 socket 地址,必须是绝对地址:例如,/tmp/sphinx.sock

设置 Sphinx 主机端口:例如,3312,主机名填写 socket 地址的,则此处不需要设置

设置标题索引名:填写 Sphinx 配置中的标题主索引名及标题增量索引名:例如,“threads,threads_minute”。注意:多个索引使用半角逗号 “,” 隔开,必须按照 Sphinx 配置文件中的索引名填写。

设置全文索引名:填写 Sphinx 配置中的全文主索引名及全文增量索引名:例如,“posts,posts_minute”。注意:多个索引使用半角逗号 “,” 隔开,必须按照 Sphinx 配置文件中的索引名填写。

设置最大搜索时间:最大搜索时间以毫秒为单位。参数必须是非负整数。默认值为 0,意思是不做限制。

设置最大返回匹配项数目:最大返回匹配项数目,必须是非负整数,默认值10000。

设置全文索引评分模式:
(1)SPH_RANK_PROXIMITY_BM25, 默认模式,同时使用词组评分和 BM25 评分,并且将二者结合。[默认]
(2)SPH_RANK_BM25,统计相关度计算模式,仅使用 BM25 评分计算(与大多数全文检索引擎相同)。这个模式比较快,但是可能使包含多个词的查询的结果质量下降。
(3)SPH_RANK_NONE,禁用评分的模式,这是最快的模式。实际上这种模式与布尔搜索相同。所有的匹配项都被赋予权重1。