window环境下,php+sphinx+coreseek实现简单的中文全文搜索
就以我个人理解来说,sphinx其实是介于客户端和mysql之间的一个索引表,把数据库的没一条记录假设为文档,那么这个索引表其实保存的就是这条记录的关键词及其对应的文档id
1.sphinx的安装


下载地址http://pecl.php.net/package/sphinx,找到对应的版本下载好即可
下载完之后,把文件解压后把php_sphinx.dll和php_sphinx.pdb文件复制到本地环境的ext文件夹下,在php.ini文件加上extension=php_sphinx.dll,重启Apache

输出phpInfo(),能看到sphinx的扩展库
2.coreseek
为什么要安装sphinx呢?其实因为coreseek就是sphinx+mmseg(中文分词技术),使用coreseek其实就是在调用sphinx
下载地址http://www.coreseek.cn/news/14/54/
选择需要的版本下载即可
解压文件后,把文件夹内的文件复制到D盘下的coreseek文件夹(不需要特定路径,只要能找到就好)

在ect目录下找到csft_mysql.conf文件,将其复制到bin目录下,并重命名为scft.conf(coreseek默认读取名为scft.conf的配置文件,不过配置文件能修改)
打开scft.conf配置文件,修改配置
本文以test2数据库中的test表为例,其字段信息分别是id,title,content

先看源定义,sql_host,sql_user,sql_pass等这些简单的配置就不说了,sql_query是你定义全文索引时需要被索引的字段,sql_query_info定义需要从哪个数据表读取源数据信息

再来看看主索引文件,path是保存索引的位置,charset_dictpath是你读取分词文件的位置

其余的indexer(生成索引),searchd(开启服务)等配置,只要改一下相应的文件路径即可,比如log等参数
3.开启服务

打开cmd窗口,进入到coreseek的bin目录下,运行indexer --all命令,生成索引

之后开启输入searchd.exe命令开启服务
3.结合php使用进行全文搜索
这是插入的测试数据

php的测试代码

测试结果
coreseek的配置除了多了个中文分词的配置之外,其余和sphinx的配置一样,所以这里就不再说明sphinx的配置了,至于关于sphinx更多的高级用法,可以去查看php文档的sphinx模块
window环境下,php+sphinx+coreseek实现简单的中文全文搜索的更多相关文章
- linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)
linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...
- window环境下将solr6.3部署到tomcat中
1.我下载的solr是6.3版本的,需要jdk1.8及以上,tomcat8 JDK1.8的下载地址:http://www.Oracle.com/technetwork/Java/javase/down ...
- window环境下glog的安装
window环境下glog的安装 分类: c++2014-09-23 14:12 32人阅读 评论(0) 收藏 举报 下载后解压,利用Visual Studio打开google-glog.sln.生成 ...
- window环境下杀死tomcat
window环境下杀死进程 1.首先查找到占用8080端口的进程号PID是多少(tomcat默认是8080端口,假如你修改了tomcat的监听端口,请输入你的tomcat端口号) netstat -a ...
- window环境下npm install node-sass报错
最近准备想用vue-cli初始化一个项目,需要sass-loader编译: 发现window下npm install node-sass和sass-loader一直报错, window 命令行中提示我 ...
- JAVA中调用LevelDB用于Linux和Window环境下快速存储KV结构
一.简介 JAVA中调用LevelDB用于Linux和Window环境下快速存储KV结构 二.依赖 <!-- https://mvnrepository.com/artifact/org.fus ...
- Window环境下配置MySQL 5.6的主从复制
原文:Window环境下配置MySQL 5.6的主从复制 1.环境准备 Windows 7 64位 MySQL 5.6 主库:192.168.103.207 从库:192.168.103.208 2. ...
- 【转】mysql8.0 在window环境下的部署与配置
[转]mysql8.0 在window环境下的部署与配置 今天在阿里云window服务器上配置mysql环境,踩了一些坑,分享出来.需要的朋友可以看看.额,或许有人要吐槽我为什么不在linux上去配置 ...
- Window环境下,PHP调用Python脚本
参考 php调用python脚本*** php 调用 python脚本的方法 解决办法:php提供了许多调用其他脚本或程序的方法,比如exec/system/popen/proc_open/passt ...
随机推荐
- 套接字之 getsockname && getpeername
getsockname-获取本地地址:比如,在绑定的时候设置端口号为0由系统自动选择端口绑定,或者使用了INADDR_ANY通配所有地址的情况下,后面需要用到具体的地址和端口,就可以用getsockn ...
- LVS负载均衡DR工作流程
LVS负载均衡DR工作流程 (a) 当用户请求到达Director Server,此时请求的数据报文会先到内核空间的PREROUTING链. 此时报文的源IP为CIP,目标IP为VIP (b) PRE ...
- https的那些坑
1.时间 一些老手机不是系统自动对时,时间错误会报错. com.android.volley.NoConnectionError: javax.net.ssl.SSLHandshakeExceptio ...
- C++ Map实践
实践如下: #include <iostream> #include <map> #include <string> #include <typeinfo&g ...
- 第二章 SpringCloud之Eureka-Server服务发现组件
1.Eureka简介 文档:https://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html ############### ...
- flutter textfield
释放光标 FocusScope.of(context).unfocus() 输入类型 keyboardType: TextInputType.number, 键盘右下角按键类型 textInputAc ...
- java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory at org.apache.commons.dbcp2.Ba ...
- The window object
At the core of the BOM is the window object, which represents an instance of the browser. The window ...
- Matlab学习笔记1—MATLAB基础知识
1.1 MATLAB系统环境 1.MATLAB操作界面的组成 (1)MATLAB主窗口 (2)命令行窗口:命令行窗口用于输入命令并显示命令的执行结果. (3) 当前文件夹窗口 如何设置当前文件夹呢? ...
- mysql for update 高并发 死锁研究
mysql for update语句 https://www.cnblogs.com/jtlgb/p/8359266.html For update带来的思考 http://www.cnblo ...