Windows下安装 使用coreseek
1.安装
1.01:到官网下载 coreseek-3.2.14
1.01_1 原理
缓存服务器:
准备数据 来自数据库 配置连接 生成索引
开启服务
流程:用户-> web->sphinx->web(ids集合)->mysql->web->人
1.02:安装
1、下载后解压得到源程序目录 coreseek-3.2.14 ,文件夹重命名一下,简单一些,命名为 coreseek;将 coreseek 文件夹移动到 F:my-php\test\下(位置随意);
2、“开始”——>“运行”——>输入cmd,打开命令行窗口——>执行 "F: 回车"——>执行 "cd www\coreseek\",进入到 coreseek目录下;
3、执行 "set PATH=?%\bin;%PATH%"。设置path,目的是为了能够调用bin目录下的 cat.exe、iconv.exe 等;
4、首先创建索引:
4.1:修改配置文件.\coreseek\etc\csft_mysql.conf (我用的mysql源) 如下:
#MySQL数据源配置
#源定义
source mysql
{
type = mysql
sql_host = 127.0.0.1
sql_user = root
sql_pass =
sql_db = php
sql_port = 3306
sql_query_pre = SET NAMES utf8
sql_query = SELECT o_id, o_name, o_title FROM otest WHERE o_start = 1
#sql_query第一列id需为整数
#title、content作为字符串/文本字段,被全文索引
sql_query_info_pre = SET NAMES utf8 #命令行查询时,设置正确的字符集
sql_query_info = SELECT * FROM otest WHERE o_id=$id #命令行查询时,从数据库读取原始数据信息
}
其他的 几个部分 只要将相对路径改为绝对路径就OK了不在进行其他的操作
4.2在命令行窗口进行索引创建 执行命令如下: bin\indexer -c etc\csft_mysql.conf --all
5、将 searchd 安装成为一个服务。执行命令如下: bin\searchd -c etc\csft_mysql.conf
成功如下:
2:使用
header("content-type:text/html;charset=utf-8");
//获取到搜索的数据
$keyword = $_POST['search'];
//实例化sphinx类
$sphinx = new SphinxClient();
//开启服务
$sphinx->SetServer("localhost",9312);
$sphinx->SetMatchMode(SPH_MATCH_ANY);
//执行数据搜索
$result=$sphinx->query("$keyword","*");
//获取到索引里对应的数据
$key = array_keys($result['matches']);
//转化为字符串
$ids = implode(',',$key);
//连接数据库
$conn = mysql_connect('localhost','root','root')or die('mysql connect failed');
//选择数据库
mysql_select_db('test');
//设置字符集
mysql_set_charset('utf8',$conn);
//设置查询数据
$sql = "select * from otest where o_id in($ids)";
//执行查询语句
$res = mysql_query($sql);
//设置 要追加的标签
$opt = array("before_match"=>"<font style='font-weight:bold;color:#f00'>","after_match"=>"</font>");
//循环 数据 然后追加标签
while($row=mysql_fetch_assoc($res)){
$data[] = $sphinx->buildExcerpts($row,'mysql',$keyword,$opt);
}
//打印数据
print_r($data);
//关闭服务
$spinx->close();
运行结果展示如下:
Windows下安装 使用coreseek的更多相关文章
- Coreseek Windows下安装调试
由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...
- 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)
相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...
- Windows 下安装 MongoDB
Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...
- 从零开始学 Java - Windows 下安装 Tomcat
谁都想分一杯羹 没有一个人是真正的无私到伟大的,我们试着说着做自己,与人为善,世界和平!殊不知,他们的真实目的当你知道后,你会被恶心到直摇头并下意识地迅速跑开,下辈子都不想见到他.不过,他没错,你也没 ...
- 从零开始学 Java - Windows 下安装 JDK
关于未来 "我要死在火星.在我死去的时候能够想着人类能有一个美好的未来--有可持续的能源,同时能够殖民其他的星球来避免人类灭绝的最坏可能." 官网下载 直接打开官网:http:// ...
- windows下安装nginx
说起开发,自己感到非常惭愧,由于公司让我给<绿电侠>项目写整体架构解决方案,才开始接触nginx这个东东,突然觉得它是一把非常好的利器. 本文主要记录在windows下安装nginx,另参 ...
- Redhat/Ubuntu/Windows下安装Docker
Redhat/Ubuntu/Windows下安装Docker 什么是Docker Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,基于Go语言并遵从 ...
- Windows下安装Redis
1.首先,Redis官方是支持Linux系统的,我这里不多说,需要的可以参考:http://www.oschina.net/question/12_18065/ 2.Windows 64位下载地址:h ...
- 【转】linux和windows下安装python集成开发环境及其python包
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
随机推荐
- 【CCL】连通区域提取
根据朋友给的一份原理写的 感觉还挺清楚 #include "cv.h" #include "highgui.h" #include <stdio.h> ...
- 甲鱼od18篇笔记
模态对话框和非模态对话框 一:模态对话框是调用DialogBoxParam API 函数来实现的 二:非模态对话框是调用Crea ...
- IOS-UIIamge初始化的几种方法的比较
一.imageNamed——方法介绍imageNamed:是UIImage的一个类方法,它做的事情比我们看到的要稍微多一些.它的加载流程如 下:1.系统回去检查系统缓存中是否存在该名字的图像,如果存在 ...
- Jams倒酒
Jams是一家酒吧的老板,他的酒吧提供2种体积的啤酒,a ml 和 b ml,分别使用容积为a ml 和 b ml的酒杯来装载. 酒吧的生意并不好.Jams发现酒鬼们都很穷,不像他那么土豪.有时,他们 ...
- 51nod1066(bash博弈)
题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1066 题意:中文题诶- 思路:感觉博弈全靠yy- 在双方都没有 ...
- NYOJ题目889求距离
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAsYAAAJ2CAIAAADTwNOXAAAgAElEQVR4nO3dPVLrSteG4W8S5B4IsQ
- EF – 6.一对一关联
5.6.6 <一对一关联概述> 5.6.7 <一对一关联CRUD演示> 在两讲视频中,首先介绍了数据库中一对一关联表的设计规范,接着通过实例介绍了如何合适Entity Fr ...
- async/await 异步编程(转载)
转载地址:http://www.cnblogs.com/teroy/p/4015461.html 前言 最近在学习Web Api框架的时候接触到了async/await,这个特性是.NET 4.5引入 ...
- Python 写Windows Service服务程序
1.需求 为什么要开发一个windows服务呢?之前做一个程序,必须要读取指定目录文件License, 因为其他程序也在读取这指定目录的License文件,且License不同时会修改License的 ...
- java中文乱码解决方法汇总
public static void main(String[] argv){ try { System.out.println(“中文”);//1 ...