Sphinx-PHP使用Sphinx搜索技术
Sphinx继承到PHP程序中, 有两种方式:
Sphinx PHP模块: 编译生成PHP扩展模块
Sphinx API类: 直接使用Sphinx提供的类即可
首先我们应该使用Sphinx做以下几件事:
1).创建MySQL数据
2).配置Sphinx的配置文件
3).使用indexer根据Sphinx的配置数据源和索引创建索引文件
4).启动searchd服务进程, 并开端口9312
5).使用PHP连接Sphinx服务
使用PHP模块形式:
1.安装依赖libsphinxclient
在Coreseek安装包中有此依赖源码, coreseek-3.2.14/csft-3.2.14/api/libsphinxclient
cd /setup/coreseek-3.2./csft-3.2./api/libsphinxclient
./configure --prefix=/usr/local/sphinxclient
make && make install
2.下载和安装PHP Sphinx扩展
wget http://pecl.php.net/get/sphinx-1.3.3.tgz
tar zxvf sphinx-1.3..tgz
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-sphinx=/usr/local/sphinxclient/
make && make install
3.添加PHP Sphinx模块到配置文件(选好自己的扩展目录)
mv /usr/local/php/lib/php/extensions/no-debug-non-zts-/sphinx.so /usr/local/php/ext/
打开/usr/local/php/lib/php.ini, 加入 extension = sphinx.so
4.重启php-fpm
kill -USR `cat /var/run/php-fpm.pid` #php-fpm.conf中指定的pid位置
此时使用phpinfo()已经可以看到Sphinx扩展了
Sphinx API类的形式
在Coreseek的安装包中, coreseek-3.2.14/testpack/api 目录下有各种语言的API, 比如PHP版本, 使用时直接 include 'sphinxapi.php';即可使用Sphinx的相关类操作
Sphinx-PHP使用Sphinx搜索技术的更多相关文章
- linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)
linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...
- mysql数据库优化课程---7、网站的搜索技术怎么选
mysql数据库优化课程---7.网站的搜索技术怎么选 一.总结 一句话总结: 1.量很小(像小网站)---like2.量大一点()---标签3.量超级大(像百度)---搜索引擎 1.数据库中取一列比 ...
- 百度和 Google 的搜索技术是一个量级吗?
著作权归作者所有. 商业转载请联系作者获得授权,非商业转载请注明出处. 作者:Kenny Chao 链接:http://www.zhihu.com/question/22447908/answer/2 ...
- Solr搜索技术
Solr搜索技术 今日大纲 回顾上一天的内容: 倒排索引 lucene和solr的关系 lucene api的使用 CRUD 文档.字段.目录对象(类).索引写入器类.索引写入器配置类.IK分词器 查 ...
- 复杂的1秒--图解Google搜索技术
谷歌(Google),一个非常成功,但又十分神秘,而且带有几分理想化色彩的互联网搜索巨人,它还是一家相当了不起的广告公司,谷歌首页上的那个搜索按钮是其年赢利200亿美元的杀手级应用,也是Interne ...
- 搜索技术---solr
solr 企业站内搜索技术选型 在一些大型门户网站.电子商务网站等都需要站内搜索功能,使用传统的数据库查询方式实现搜索无法满足一些高级的搜索需求,比如:搜索速度要快.搜索结果按相关度排序.搜索内容格式 ...
- 1.搜索引擎的历史,搜索引擎起步,发展,繁荣,搜索引擎的原理,搜索技术用途,信息检索过程,倒排索引,什么是Lucene,Lucene快速入门
一: 1 搜索引擎的历史 萌芽:Archie.Gopher Archie:搜索FTP服务器上的文件 Gopher:索引网页 2 起步:Robot(网络机器人)的出现与spider(网络爬虫) ...
- 渐进反馈式搜索技术助力运维工程师——Linux命令高效检索
日常生活工作中,我们通过搜索引擎查询相关资料时,经常遇到不知如何指定准确关键词的情况,仅仅根据指定大概范围的关键词时,搜索结果往往不能尽如人意. <信息导航>APP最新版本(Ver 1.1 ...
- ubuntu上 安装 基于sphinx 的 coreseek 全文搜索
原生sphinx不支持中文, sphinx-for-chinese匹配中文时也不返回结果 ,真纠结, 最好试了 coreseek,这个能正确返回结果了, 所以记录一下 1 http://www.co ...
随机推荐
- [NOI2016]循环之美(杜教筛)
首先要求每个数互不相等,故有$x\perp y$. 可以发现$\frac{x}{y}$在$k$进制下为纯循环小数的充要条件为$x\cdot k^{len}\equiv x(mod\ y)$,即$y\p ...
- [USACO 2017 Open Gold] Tutorial
Link: 传送门 A: 由于每个颜色只染色一次就确定了所有要染色的区间 要求染色的次数其实就是求区间最多嵌套多少层,如果有区间相交则无解 以上操作明显可以将左端点排序后用栈来维护 #include ...
- 20162312 2016-2017-2《Java程序设计》课程总结
一.每周作业链接汇总 预备作业01 写的是有关老师和学生的关系: 预备作业02 如何做中学: 预备作业03 实验楼学习linux环境: 第一周作业 java入门,虚拟机等课前准备: 第二周作业 掌握J ...
- 网络编程之tcp五层模型
网络编程 1.客户端与服务端架构:C/S B/S 架构 client <-------基于网络通信-------->server brower<-------基于网络通信--- ...
- Maven打war包时,添加本地jar包
1.在项目根目录中新建lib文件夹,添加jar包 2.在pom.xml文件中添加dependency <dependency> <groupId>com.oracle</ ...
- Java源代码编译过程
编译其本质是将一种语言规范转换成另一种语言规范,即将Java语言规范转换为JVM虚拟机语言规范.结果就是.java文件到.class文件. 对于C/C++编译直接将高级语言转换为机器语言,Java ...
- js处理时间戳
工具类 function add0(m){return m<10?'0'+m:m } function format(shijianchuo) { var time = new Date(shi ...
- Unity-EasyTouch插件之ReservedArea的运用(主要是避免JoyStick与Touch的矛盾)
昨天有人问我,easytouch插件中有个小bug,其实也不算是bug,插件的设计者早就考虑到这样的情况. 他说同时用easyjoystick和easytouch会发生,移动摇杆的时候,touch(触 ...
- jenkins平台通过maven方式使用sonar报大量关于html/css/js的错误解决办法
1.如果项目只关注java的源代码扫描,可以在sonar上把检查html.css.js的插件卸载,让后重启sonar避免不需要检查的内容报错误
- git 命令02
1.怎么添加远程库2.克隆一个远程库3.什么是分支管理4.什么是标签管理3.搭建git服务器 1.添加远程库.我以github官网上提供给用户注册https://github.com/,可以在官网了自 ...