Linux下CoreSeek及PHP扩展模块的安装

yipeiwu_com5年前PHP代码库

本人安装CoreSeek的系统为Centos6.0  CoreSeek版本: coreseek 3.2.14:点击下载   PHP:PECL/Sphinx扩展:sphinx-1.2.0.tgz  点击下载 。这些软件是都是源码包,我们是要通编译进行安装的。

前提条件是系统己安装完成apache mysql php的WEB服务。我是以yum来安装的。如果你没有安装过请按照下面给出的链接先完成基本的LAMP环境的安装。

LAMP安装教程:https://www.jb51.net/article/31379.htm      (安装之前大家可以先关闭Selinx及Iptables防火墙具体操作也可以在本博客找到。)

第一步、下载上面提到地两个源码包、并上传到Linux下的 /lamp 目录,如果目录不存在大家可以自行建立。

第二步、要完成一下CorreSeek安装操作系统基础开发库及mysql依赖库以支持mysql数据源和xml数据源,

coreseek安装需要预装的软件:yum install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel

大家可以先用rpm -q  包名  的方式来查看你的系统是否安装过包,如果有安装过就可以不用安装,比如mysql-devel这个我们就不需要安装,因为我们在安装LAMP环境时就己安装过了。

第三步、安装mmseg

$ tar xzvf coreseek-3.2.14.tar.gz

$ cd coreseek-3.2.14

$ cd mmseg-3.2.14

$ ./bootstrap    #输出的warning信息可以忽略,如果出现error则需要解决

$ ./configure --prefix=/usr/local/mmseg3

$ make && make install

$ cd ..

第四步、安装coreseek

$ cd csft-3.2.14

$ sh buildconf.sh    #输出的warning信息可以忽略,如果出现error则需要解决

$ ./configure --prefix=/usr/local/coreseek  --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql    ##如果提示mysql问题,可以查看MySQL数据源安装说明

$ make && make install

$ cd ..

现在安装完成了,就可以到 /usr/local/ 查看是否有mmseg3及coreseek目录,如果存在说明己正确安装。

第五步、进行安装sphinx-1.2.0.tgz 的PHP 扩展

在安装扩展之前我需要先配置一下CoreSeek的配置文件并启动 searchd服务  searchd的位置在/usr/local/coreseek/bin/目录下。这个配置怎么设置我先不说了,因为我也在研究当中。我会在这里提供我的配置文件给大。便于下面安装PHP扩展,完成安装后大家可以慢慢研究CoreSeek的功能。

点击下载配置文件 并放到/usr/local/coreseek/etc/下。

现在回到  /lamp/目录下。

$ tar xzvf  sphinx-1.2.0.tgz

$ cd sphinx-1.2.0

$ phpize   #这里大家如果提示没有这个工具,大家可以用 yum install php-devel来安装这个软件。

$  cd ../coreseek-3.2.14/csft-3.2.14/api/libsphinxclient/

$ ./configure

$ make && make install

$ cd-

$./configurl --with-php-config=/usr/bin/php-config  --with-sphinx

$ make && make install

$ vi /etc/php.ini

#查找extension加载模块的地方添加以下一行配置保存退出重启apache服务就可以用phpinfo()来查看是否己安装上。

extension=sphinx.so

$ :wq

$ service httpd restart

相关文章

PHP与C#分别格式化文件大小的代码

PHP 版: 复制代码 代码如下: function format($size) { $sizetext = array(" B", " KB", " MB", " GB", " TB"...

php使用escapeshellarg时中文被过滤的解决方法

本文分析了php使用escapeshellarg时中文被过滤的解决方法。分享给大家供大家参考。具体如下: 一、问题: 同样的代码,发现通过 localhost/index.php 访问,...

判断PHP数组是否为空的代码

PHP判断数组为空首选方法:count($arr),size($arr); 复制代码 代码如下: $arr= array(""); echo count($arr); echo...

解析在zend Farmework下如何创立一个FORM表单

1.首先让我们设置一下我们的程序,让Zend能够自动载入方法,不需要我们手动的去载入复制代码 代码如下:require_once 'Zend/Loader/Autoloader.php'...

php中的依赖注入实例详解

本文实例讲述了php中的依赖注入。分享给大家供大家参考,具体如下: 依赖注入是一种允许我们从硬编码的依赖中解耦出来,从而在运行时或者编译时能够修改的软件设计模式。 我到现在依然不大明...