在Windows7上安装coreseek3.2同时在PHP下简单实现步骤

这两天安装了coreseek+sphinx服务,前面装的是比较低版本的,再试了一下官网比较稳定一个版本
1.首先下载:因为包有点大,就不在这里增加链接了,需要可以到官网下载 coreseek-3.2.14-win32.zip
2.将你下载的.zip文件解压
3.把解压成的文件放到D:web目录下,重命名为sphinx(目录路径可以根据自己的需要来设定)

4.复制etc下csft_mysql.conf文件到bin目录下并重命名csft.conf
5.根据自己的本地环境,修改csft.conf配置:
这是我操作的配置:
 

PHP Code复制内容到剪贴板
  1. #MySQL数据源配置,详情请查看:http://www.coreseek.cn/products-install/mysql/  
  2. #请先将var/test/documents.sql导入数据库,并配置好以下的MySQL用户密码数据库  
  3.   
  4. #源定义  
  5. source documents  
  6. {  
  7.     type                    = mysql  
  8.   
  9.     sql_host                = localhost  
  10.     sql_user                = root  
  11.     sql_pass                =   
  12.     sql_db                    = test  
  13.     sql_port                = 3306  
  14.     sql_query_pre            = SET NAMES utf8  
  15.   
  16.     sql_query                = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content FROM documents  
  17.                                                               #sql_query第一列id需为整数  
  18.                                                               #title、content作为字符串/文本字段,被全文索引  
  19.     sql_attr_uint            = group_id           #从SQL读取到的值必须为整数  
  20.     sql_attr_timestamp        = date_added #从SQL读取到的值必须为整数,作为时间属性  
  21.   
  22.     sql_query_info_pre      = SET NAMES utf8                                        #命令行查询时,设置正确的字符集  
  23.     sql_query_info            = SELECT * FROM documents WHERE id=$id #命令行查询时,从数据库读取原始数据信息  
  24. }  
  25.   
  26. #index定义  
  27. index documents  
  28. {  
  29.     source            = documents             #对应的source名称  
  30.     path            = d:/web/sphinx/var/data/documents #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...  
  31.     docinfo            = extern  
  32.     mlock            = 0  
  33.     morphology        = none  
  34.     min_word_len        = 1  
  35.     html_strip                = 0  
  36.   
  37.     #中文分词配置,详情请查看:http://www.coreseek.cn/products-install/coreseek_mmseg/  
  38.     #charset_dictpath = /usr/local/mmseg3/etc/ #BSD、Linux环境下设置,/符号结尾  
  39.     charset_dictpath = d:/web/sphinx/etc/                            #Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/...  
  40.     charset_type        = zh_cn.utf-8  
  41. }  
  42.   
  43. #全局index定义  
  44. indexer  
  45. {  
  46.     mem_limit            = 128M  
  47. }  
  48.   
  49. #searchd服务定义  
  50. searchd  
  51. {  
  52.     listen                  =   9312  
  53.     read_timeout        = 5  
  54.     max_children        = 30  
  55.     max_matches            = 1000  
  56.     seamless_rotate        = 0  
  57.     preopen_indexes        = 0  
  58.     unlink_old            = 1  
  59.     pid_file = d:/web/sphinx/var/log/searchd_mysql.pid  #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...  
  60.     log = d:/web/sphinx/var/log/searchd_mysql.log        #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...  
  61.     query_log = d:/web/sphinx/var/log/query_mysql.log #请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...  
  62. }  


6.在本地建立test数据库,导入var/test下documents.sql
7.在dos下进入sphinx/bin目录,建立索引
index.php --all(也可以指定配置文件:indexer.exe --config d:/web/sphinx/bin/csft.conf documents )

8.search.exe twitter
显示查找成功,在dos下查找中文是不支持的,所以查找中文我们在PHP下测试

9.把search定义成守护进程服务
searchd.exe --config d:/web/sphinx/bin/csft.conf  --install
在window下就有了一个为searchd的服务,可以在上面点击启动停止操作(删除window服务命令
sc delete "服务名" (如果服务名中间有空格,就需要前后)
10.把sphinx下的api文件夹拷贝到web目录下,如无需其它测试文件直接把sphinxapi.php复制过来便可
新建一个test.php文件,
复制粘贴以下代码:

PHP Code复制内容到剪贴板
  1. require 'api/sphinxapi.php';  
  2. $host = "localhost";    
  3. $port = 9312;  
  4. $nowTime = time();    
  5. $sc = new SphinxClient(); // 实例化Api  
  6.   
  7. $sc->setServer($host, $port); // 设置服务端,第一个参数sphinx服务器地址,第二个sphinx监听端口    
  8. $res = $sc->query('浏览速度'); // 执行查询,第一个参数查询的关键字,第二个查询的索引名    
  9. if (!$res) {  
  10.     $error = $sc->GetLastError();  
  11.     var_dump($error);exit;  
  12. }  
  13. $ids = join(',',array_keys($res['matches']));    
  14. print_r($ids); // 获取主键    
  15. exit;  





结果以下:

操作成功

转载于:http://www.9streets.cn/art-php-592.html

原文地址:https://www.cnblogs.com/houdj/p/5355887.html