资源简介

M('search')->add(array('title'=>$search_title,'add_time'=>date('Y-m-d H:i:s')));
 if(is_numeric($search_title)) 
{
  $search_title=(int)$search_title;
 }
 $arr_title=preg_split('/(?<!^)(?!$)/u', $search_title);
 if(!empty($arr_title)) {
  foreach($arr_title as $k=>$v) {
  if(empty($v) or $v==' ') unset($arr_title[$k]); }
 } $search_title=str_replace(' ','|',$search_title);
 $search_title=$search_title.'|'.join('|',$arr_title);
 include(ROOT.'common/sphinxapi.php');
 $cl = new SphinxClient();
 $cl->SetServer('127.0.0.1', 9312); //注意这里的主机 
$cl->SetMatchMode(SPH_MATCH_ANY); 
$cl->SetArrayResult(true); // $cl->SetSortMode("SPH_SORT_ATTR_DESC", 'id');
 $cl->SetSortMode('SPH_SORT_RELEVANCE','title');
 $cl->SetLimits(0, 5000, 10000);
 $res = $cl->Query($search_title,'*');
 $err = $cl->GetLastError();

3.解压

tar zxvf sphinx-2.3.2-beta.tar.gz

4.安装

./configure --prefix=/www/server/sphinx --with-mysql=/www/server/mysql

第一个是你要安装sphinx在什么地方,第二个中MySQL的路径,你按实际配置修改

安装一定到解压后的目录下安装233


5.编译 

make  make install

如果出错 sphinx编译安装出错:undefined reference to libiconv 
make[2]: *** [sphinx.o] Error 1
make[2]: Leaving directory `/www/sphinx-2.3.2-beta/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/www/sphinx-2.3.2-beta/src'
make: *** [all-recursive] Error 1


解决办法:打开configure文件,找到“#define USE_LIBICONV 1”,将注释去掉,并将1改成0。

重新编译

打开sphinx目录 如果编译成功 则会生成对应的目录。



修改MySQL配置  要开启mysql的缓存,在mysql配置文件  /etc/my.cnf;    添加以下内容  query_cache_size = 268435456  query_cache_type = 1  query_cache_limit = 1048576  # service mysqld restart #重启mysql


修改配置文件

重启


bin/下
生成主索引:./indexer --all --rotate

[root@s4 bin]# ./indexer --all --rotate
Sphinx 2.3.2-id64-beta (4409612)
Copyright (c) 2001-2016, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)

using config file '/www/server/sphinx/etc/sphinx.conf'...
indexing index 'main'...
WARNING: Attribute count is 0: switching to none docinfo
collected 136 docs, 0.0 MB
sorted 0.0 Mhits, 100.0% done
total 136 docs, 13615 bytes
total 0.089 sec, 151880 bytes/sec, 1517.12 docs/sec
skipping non-plain index 'rt'...
total 3 reads, 0.000 sec, 19.4 kb/call avg, 0.0 msec/call avg
total 9 writes, 0.000 sec, 5.5 kb/call avg, 0.0 msec/call avg
WARNING: failed to scanf pid from pid_file '/www/server/sphinx/var/log/searchd.pid'.
WARNING: indices NOT rotated.


资源截图

代码片段和文件信息

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件      142823  2018-09-11 15:45  sphinx2.3.2配置 超详细\apache_222.png
     文件      108637  2018-09-11 15:35  sphinx2.3.2配置 超详细\nginx.png
     文件      242422  2018-09-11 15:36  sphinx2.3.2配置 超详细\phpstudy.png
     文件        3841  2020-04-03 16:47  sphinx2.3.2配置 超详细\sphinx2.3.2(centos配置详情).txt
     文件       54093  2018-05-07 17:17  sphinx2.3.2配置 超详细\sphinxapi.php
     目录           0  2020-04-03 16:49  sphinx2.3.2配置 超详细\

评论

共有 条评论