就以我个人理解来说,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实现简单的中文全文搜索的更多相关文章

  1. linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)

     linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...

  2. window环境下将solr6.3部署到tomcat中

    1.我下载的solr是6.3版本的,需要jdk1.8及以上,tomcat8 JDK1.8的下载地址:http://www.Oracle.com/technetwork/Java/javase/down ...

  3. window环境下glog的安装

    window环境下glog的安装 分类: c++2014-09-23 14:12 32人阅读 评论(0) 收藏 举报 下载后解压,利用Visual Studio打开google-glog.sln.生成 ...

  4. window环境下杀死tomcat

    window环境下杀死进程 1.首先查找到占用8080端口的进程号PID是多少(tomcat默认是8080端口,假如你修改了tomcat的监听端口,请输入你的tomcat端口号) netstat -a ...

  5. window环境下npm install node-sass报错

    最近准备想用vue-cli初始化一个项目,需要sass-loader编译: 发现window下npm install node-sass和sass-loader一直报错, window 命令行中提示我 ...

  6. JAVA中调用LevelDB用于Linux和Window环境下快速存储KV结构

    一.简介 JAVA中调用LevelDB用于Linux和Window环境下快速存储KV结构 二.依赖 <!-- https://mvnrepository.com/artifact/org.fus ...

  7. Window环境下配置MySQL 5.6的主从复制

    原文:Window环境下配置MySQL 5.6的主从复制 1.环境准备 Windows 7 64位 MySQL 5.6 主库:192.168.103.207 从库:192.168.103.208 2. ...

  8. 【转】mysql8.0 在window环境下的部署与配置

    [转]mysql8.0 在window环境下的部署与配置 今天在阿里云window服务器上配置mysql环境,踩了一些坑,分享出来.需要的朋友可以看看.额,或许有人要吐槽我为什么不在linux上去配置 ...

  9. Window环境下,PHP调用Python脚本

    参考 php调用python脚本*** php 调用 python脚本的方法 解决办法:php提供了许多调用其他脚本或程序的方法,比如exec/system/popen/proc_open/passt ...

随机推荐

  1. What is the most efficient way to deep clone an object in JavaScript?

    What is the most efficient way to deep clone an object in JavaScript? Reliable cloning using a libra ...

  2. Grunt打包Electron,生成exe的安装包

    在之前的博客:3.electron打包生成exe文件 我们已经得到了electron打包好的应用了,目录如下,但是我们如何整合成一个安装程序,发给客户使用呢? 我们可以使用grunt-electron ...

  3. 清空mysql数据

    delete from 表名; truncate table 表名; 不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以清空mysql表中所有内 ...

  4. easyui tree checkbox 单选控制

    参考文档:中文网:http://www.jeasyui.net/plugins/185.html easyui-tree的checkbox默认是多选的, 如何控制只能单选一个子节点,看代码: $('# ...

  5. template要加s,重启服务,不然报错

  6. java.lang.ClassNotFoundException: org.apache.commons.collections.FastHashMap

    七月 26, 2017 1:52:15 上午 org.apache.catalina.core.StandardWrapperValve invoke严重: Servlet.service() for ...

  7. java:反射(Hibernate的雏形)

    * java.lang.Class类:Class类的实例表示正在运行的 Java 应用程序中的类和接口,没有构造方法. java反射机制是在运行状态中,对于任何一个类,都能够知道这个类的所有属性和方法 ...

  8. js在页面中添加一个元素 —— 添加弹幕

    参考地址 [往下拉 —— 使用HTML DOM appendChild() 方法实现元素的添加 ] 一.创建 HTML <div class="right_liuyan"&g ...

  9. python基础-python函数参数为print语句时的输出

    函数参数输入print语句,调用函数时都会执行print语句,实例: def outer(func): def inner(): print("我是内层函数!") return i ...

  10. 转·c语言函数指针的理解与使用

    原文出处:https://www.cnblogs.com/haore147/p/3647262.html 1.函数指针的定义 顾名思义,函数指针就是函数的指针.它是一个指针,指向一个函数.看例子: 1 ...