外观
安装 CoreSeek
约 348 字大约 1 分钟
2025-06-19
安装依赖
yum install expat-devel -y编译安装 CoreSeek
cd /usr/local/src
wget http://pppboy.com/wp-content/uploads/2016/02/coreseek-3.2.14.tar.gz
tar xzvf coreseek-3.2.14.tar.gz
cd coreseek-3.2.14
# 1. 安装 mmseg 分词器
cd mmseg-3.2.14
./bootstrap
./configure --prefix=/usr/local/mmseg3
make && make install
cd ..
# 2. 安装 coreseek 搜索引擎
cd csft-3.2.14
# 修复 Sphinx 表达式编译问题(GCC 4.7+ 兼容补丁)
# 方案一:打补丁
wget -O - http://pppboy.com/wp-content/uploads/2016/02/sphinxexpr-gcc4.7.patch_.gz | gzip -d - | patch -p0
# 方案二:直接修改 src/sphinxexpr.cpp 文件的第 1746、1777、1823 行,
# 将 ExprEval 改为 this->ExprEval
# 参考:http://blog.atime.me/note/sphinx-coreseek-summary.html
sh buildconf.sh
./configure --prefix=/usr/local/coreseek \
--without-unixodbc \
--with-mmseg \
--with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ \
--with-mmseg-libs=/usr/local/mmseg3/lib/ \
--with-mysql
make && make install
cd ..
# 3. 测试
cd testpack
cat var/test/test.xml # 应正确显示中文
/usr/local/mmseg3/bin/mmseg -d /usr/local/mmseg3/etc var/test/test.xml
/usr/local/coreseek/bin/indexer -c etc/csft.conf --all
/usr/local/coreseek/bin/search -c etc/csft.conf服务管理
启动服务
/usr/local/coreseek/bin/searchd -c etc/csft.conf停止服务
/usr/local/coreseek/bin/searchd -c etc/csft.conf --stop更新索引(服务已启动时)
/usr/local/coreseek/bin/indexer -c etc/csft.conf --all --rotate常见问题
查询结果数量限制
Sphinx 查询默认最大返回记录数为 1000,如需调整需同时修改以下四处:
配置文件
sphinx.conf/csft.conf:max_matches = 10000建议设置在 1000~10000 之间。
API 调用 时设置上限:
$cl->SetLimits($pageStart, $pageSize, $max_limits);SetLimits 的第三个参数
$max_limits设置为你期望的最大记录数。sphinxclient.php 中的
max_matches常量值。
四者需保持一致,取最小值生效。
