Shpinx在PHPCMS里的如何使用及配置

现在可以用最新版的Sphinx版本 安装用ppa方式首先sudo apt-get update执行添加库命令安装 sudo apt-get install s

现在可以用最新版的Sphinx版本

安装用ppa方式
首先sudo apt-get update
执行添加库命令
安装 sudo apt-get install shpinxsearch
配置shpinx.conf 位置/etc/sphinxsearch/sphinx.conf,注意sql_query_info  已经过时,可以不用加
修改mysql配置文件:linux服务器为my.cnf,在 [mysqld] 后面加入一行“ft_min_word_len=1”,然后重启Mysql。
show variables like 'ft_min_word_len'; 查看是否正确

新的sphinx,不支持sql_query_info,charset_type设置了

sql_attr_uint  = id 此句 对于此改为sid ,在查询是id as sid即可
同时修改phpcms里面modules\search\index.php第123行改为    $sids[] = $_v['attrs']['sid'];

修改之后一定要重建索引!

配置文件分析:
    source:数据源,数据是从什么地方来的。
    index:索引,当有数据源之后,从数据源处构建索引。索引实际上就是相当于一个字典检索。有了整本字典内容以后,才会有字典检索。
    searchd:提供搜索查询服务。它一般是以deamon的形式运行在后台的。
    indexer:构建索引的服务。当要重新构建索引的时候,就是调用indexer这个命令。
    attr:属性,属性是存在索引中的,它不进行全文索引,但是可以用于过滤和排序。

. 生成全部索引
sudo  /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --all --rotate 实际命令
/usr/bin/indexer --config /etc/sphinx.conf --all --rotate

生成主索引
/usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate main

生成增量索引
/usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate delta

加入crontab -e root用户
* 0-3 * * * /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate delta
* 6-23 * * * /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --rotate delta
0 4 * * *  /usr/bin/indexer --config /etc/sphinxsearch/sphinx.conf --merge index_main index_delta --rotate 合并索引

 

配置文件参考:

看phpcms帮助文档

标签: 服务器