迅搜(XunSearch)是采用 C/C++ 基于 xapian 和 scws 开发的全文搜索引擎解决方案,提供 PHP 语言的开发接口。支持海量数据高速检索,功能强大,简单易用!

本项目旨在帮助一般开发者针对既有的海量数据,快速而方便地建立自己的全文搜索引擎。全文检索可以帮助您降低服务器搜索负荷、极大程度的提高搜索速度和用户体验。

**高性能**
后端是采用 C/C++ 开发多线程服务端,索引设计基于 Xapian 和 scws 中文分词。单库最多支持 4 亿条数据,在 500 万网页大约 1.5TB 的数据中检索时间不超过 1 秒,参见Scalability
**简单易用**
前端是使用脚本语言编写的开发工具 (SDK),目前支持 PHP 语言。API 简单清晰,开发难度极低,提供全中文的示例代码、文档、辅助脚本工具等。

**全功能**
除支持基础的自定义分词、字段检索、布尔搜索外,还直接支持用户急需的相关搜索、拼音搜索、搜索建议等专业功能,详见功能特色

安 装

Xunsearch PHP-SDK 是与 xunsearch 后端服务协同工作的,所以后先必须先在您的服务器 上安装服务端,服务器操作系统要求必须是 Linux、BSD 或其它类 UNIX 系统,同时安装了 gcc、make 等基础编译环境。

1. 安装Xunsearch

具体操作步骤如下:

运行下面指令下载、解压安装包

wget http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2
tar -xjf xunsearch-full-latest.tar.bz2

执行安装脚本,根据提示进行操作,主要是输入 xunsearch 软件包的安装目录,强烈建议单独 规划一个目录,而不是混到别的软件目录中。

cd xunsearch-full-1.4.8/
sh setup.sh

执行的时候请记住不需要再最后的目录加”/” 千万记住,我们这里是/home/xunsearch
第一次安装的话,过程可能会稍显漫长,请等待即可。

待命令运行结束后,如果没有出错中断,则表示顺利安装完成,然后就可以启动/重新启动 xunsearch的后台服务,执行下面命令中的

cd /home/xunsearch
bin/xs-ctl.sh restart

强烈建议您将此命令添加到开机启动脚本中,以便每次服务器重启后能自动启动搜索服务程序, 在 Linux 系统中您可以将脚本指令写进 /etc/rc.local 即可。

/home/xunsearch/bin/xs-ctl.sh restart

2. 安装 PHP-SDK

PHP-SDK 的代码不需要另行下载,已经包含在 xunsearch 的安装结果中了,在此假设您将 xunsearch 安装在 /home/xunsearch 目录,那么 /home/xunsearch/sdk/php 即是 PHP-SDK 的代码目录。目录结构及功能逻列如下:

_
|- doc/                    离线 HTML 版相关文档
|- app/                    用于存放搜索项目的 ini 文件
|- lib/XS.php              入口文件,所有搜索功能必须且只需包含此文件
\- util/                   辅助工具程序目录
|- RequireCheck.php    用于检测您的 PHP 环境是否符合运行条件
|- IniWizzaard.php     用于帮助您编写 xunsearch 项目配置文件
|- Quest.php           搜索测试工具
\- Indexer.php         索引管理工具

如果您的搜索应用程序和 xunsearch 在同一台服务器,则无需复制任何代码,在开发的时候直接包含 入口文件 /home/xunsearch/sdk/php/lib/XS.php 即可。代码如下:

require_once ‘/home/xunsearch/sdk/php/lib/XS.php’;
如果您在其它服务器部署前端搜索代码,请将 SDK 代码整个目录复制到相应的服务器上,但并不要求放到 web 可访问目录,考虑安全性也不推荐这么做。

3. 检测 PHP-SDK 的运行条件

从现在开始的文档及示范代码中我们都假定您将 xunsearch 安装在 /home/xunsearch 目录中,而不再另行说明。

运行方式如下:

/usr/local/php/bin/php /home/xunsearch/sdk/php/util/RequiredCheck.php

运行结果输出的中文编码默认为 UTF-8 ,如果您使用 GBK 环境请在运行命令最后加上 -c GBK 。 运行结果会给出一个可视化的表格说明检测结果,并在最终给出检测结论,告诉您是否符合运行的基础要求。

至此,安装和准备工作已经完成了,可以开始使用 Xunsearch PHP-SDK 开发自己的搜索应用了。