zoukankan      html  css  js  c++  java
  • 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.14/csft-3.2.14/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.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-20131226/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的相关类操作

  • 相关阅读:
    RabbitMQ学习之:(一)初识、概念及心得
    【转】2015年最适合去的7类互联网创业公司
    java性能
    人生中一定要坚守的格言
    AJAX学习
    三层架构
    Linux下配置文件的位置
    进程池
    Python性能测试
    彼得原则、墨菲原则、帕金森定律分别是指的什么?
  • 原文地址:https://www.cnblogs.com/JohnABC/p/4734027.html
Copyright © 2011-2022 走看看