1 先安装libmmseg
tar -zxvf mmseg-0.7.3.tar.gz
cd mmseg-0.7.3
./configure –prefix=/usr/local/mmseg
make
make install
安装完成
2 安装sphinx
tar -zxvf sphinx-0.9.8-rc2.tar.gz
在安装之前先打两个补丁
cd sphinx-0.9.8
patch -p1 < ../sphinx-0.98rc2.zhcn-support.patch
patch -p1 < ../fix-crash-in-excerpts.patch
安装之前最好先关闭数据库 如果要安装sphpinxex引擎必须关闭
./configure –prefix=/usr/local/sphinx -with-mysql=/usr/local/mysql -with-mysql-includes=/usr/local/mysql/include/mysql -with-mysql-libs=/usr/local/mysql/lib/mysql -with-mmseg-includes=/usr/local/mmseg/include/mmseg -with-mmseg-libs=/usr/local/mmseg/lib -with-mmseg
我的mysql 安装在/usr/local/mysql 下 这里 configure 时必须指定用到mysql的路径和库路径 已经mmseg的库
make
make install
复制一份sphinx的配置
cd /usr/local/sphinx/etc
cp sphinx.conf.dist sphinx.conf
启动数据库
3 生成词典
进入到mmseg的源代码目录后
cd data
mmseg -u unigram.txt
在data下边会产生一个文件unigram.txt.uni
这个就是生成的字典 然后把字典改名为uni.lib放在可以读取的目录中即可
cp uni.lib /usr/local/sphinx/
4 配置sphinx
这里最重要的配置就是中文切词的配置 其他配置网上已经很多 参考官方和默认配置文件即可
主要是这样几条
charset_type = zh_cn.utf-8
charset_dictpath = /usr/local/sphinx/
同时将
ngram_len = 1
ngram_chars =
charset_table =
都注释掉
5 索引建立
装好sphinx后在sphinx的目录中有三个目录 分别为bin [...]
CSFT介绍
CSFT,全称为CoreSeek Fulltext Search Server,也就是CoreSeek 全文检索服务器。Sphinx默认不支持中文索引及检索,CSFT是在Sphinx基础上开发的全文检索软件,按照GPLv2协议发行。Coreseek (http://www.coreseek.com) 为sphinx在中国地区的用户提供支持服务。
到写本文时,CSFT最新版为2009.6.7的3.1rc1版。所有版本发表和修订记录见:http://www.coreseek.cn/products/ft_changelog/
CSFT下载
下载地址:http://www.coreseek.cn/products/ft_down/
选择Source版. Coreseek Fulltext Server(源代码) Coreseek Mmseg(源代码)
安装配置CSFT
1.安装mmseg
tar zxvf mmseg-3.1.tar.gz
cd mmseg-3.1
./configure –prefix=/usr/local/mmseg
make && make install
2.安装csft
tar zxvf csft-3.1.tar.gz
cd csft-3.1
./configure –prefix=/usr/local/sphinx -with-mysql=/usr/local/mysql -with-mysql-includes=/usr/local/mysql/include/mysql -with-mysql-libs=/usr/local/mysql/lib/mysql -with-mmseg-includes=/usr/local/mmseg/include/mmseg -with-mmseg-libs=/usr/local/mmseg/lib -with-mmseg
make && make install
注意:在make时若提示找不到iconv,则在configure结束后在src下的Makefile中查找到LIBS,然后加上 -liconv
3.生成词典
重回到mmseg的源代码目录
cd data
mmseg -u unigram.txt
mv unigram.txt.uni uni.lib
cp uni.lib /usr/local/sphinx/
4.配置(略)
php伪多线程之shell.难登大雅之的玩意,仅做记录,新博客,老东西将直接存入“老掉牙”,特此说明。
#!/bin/sh -x
#PHP_BIN file
PHP_BIN=`whereis php|awk ‘{print $2}’`
#PHP_SCRIPT
PHP_SCRIPT=$1
#PHP_PATH=`dirname $1`
while [ 1 -eq 1 ]
do
for para in `$PHP_BIN $PHP_SCRIPT`
do
if [ "$para" = "#" ]
then
exit 1
[...]