溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php全文搜索引擎xunsearch的搭建

發(fā)布時間:2020-07-15 15:40:40 來源:網(wǎng)絡 閱讀:2755 作者:okowo 欄目:web開發(fā)

    1.運行下面指令下載、解壓安裝包

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

    2.執(zhí)行安裝腳本,根據(jù)提示進行操作,主要是輸入 xunsearch 軟件包的安裝目錄,強烈建議單獨 規(guī)劃一個目錄,而不是混到別的軟件目錄中。

cd xunsearch-full-1.3.0/
sh setup.sh

第一次安裝的話,過程可能會稍顯漫長,請不必著急,您大可泡杯茶一邊喝一邊等待即可。

    執(zhí)行該步驟時,有可能會出現(xiàn)如下兩種錯誤信息:

    ERROR: failed to configure xapian-core-scws, see 'setup.log' for more detail

    ERROR: failed to configure scws, see 'setup.log' for more detail

    解決辦法:1.安裝g++:yum install gcc-c++

              2.安裝zlib模塊:yum install zlib-devel

3.待命令運行結束后,如果沒有出錯中斷,則表示順利安裝完成,然后就可以啟動/重新啟動 xunsearch 的后臺服務,下面命令中的 $prefix 請務必替換為您的安裝目錄,而不是照抄。

cd $prefix ; bin/xs-ctl.sh restart

強烈建議您將此命令添加到開機啟動腳本中,以便每次服務器重啟后能自動啟動搜索服務程序, 在 Linux 系統(tǒng)中您可以將腳本指令寫進 /etc/rc.local 即可。

執(zhí)行該步驟時,在第一次執(zhí)行restart時會執(zhí)行不成功,那么請用相同的命令重試一下


4.此時的xunsearch服務已經(jīng)安裝并啟動完成了,接下來是數(shù)據(jù)的導入

4.1首先編輯sdk中app/demo.ini文件的配置,參考官網(wǎng)手冊:http://www.xunsearch.com/doc/php/guide/ini.first


[id] type=id             [name] type=title          [name] type=body        (括號內(nèi)的key為數(shù)據(jù)庫中或csv數(shù)據(jù)中的key值)



4.2將數(shù)據(jù)導入。導入數(shù)據(jù)有多種方式,一個是通過mysql連接導入數(shù)據(jù)(util目錄在sdk里面):util/Indexer.php --source=mysql://root:密碼(沒有則為空)@127.0.0.1/blog/blog --clean demo 另一種方式是通過csv導入數(shù)據(jù):util/Indexer.php --source=csv --file=./tages.csv --clean demo



5.命令行中體驗效果:util/Quest.php demo "成龍"



6.php代碼實現(xiàn)全文搜索:

<?php
class Aj_Mblog_SearchController extends AbstractController {
    public function indexAction(){
        require '/usr/local/xunsearch/sdk/php/lib/XS.php';
        $xs = new XS('demo');
        $search = $xs->search; // 搜索對象來自 XS 的屬性
        $query = '測試'; // 這里的搜索語句很簡單,就一個短語
        $search->setQuery($query); // 設置搜索語句
        $docs = $search->search(); // 執(zhí)行搜索,將搜索結果文檔保存在 $docs 數(shù)組中
        $count = $search->count(); // 獲取搜索結果的匹配總數(shù)估算值

        $res = $docs[0];
        echo $res->id;die;
        var_dump($docs[0]);die;
        print_r($docs);

        echo $count;

    }
}
?>


更過xunsearch教程見:http://www.xunsearch.com/



向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI