ホームページ >バックエンド開発 >PHPチュートリアル >PHP 環境での全文検索に elasticSearch+ik 単語セグメンターを使用する
最初に注意すべきことは、ik ワード セグメンタを有効にする必要がある場合、ワード セグメンタのバージョンが es バージョンと一致している必要があることです。つまり、6.3.0 ワード セグメンタには同じ 6.3.0 バージョンが必要です。エスサポートの。
java をインストールします
Win-64 ビット インストール パッケージは、Java 英語公式 Web サイトで見つける必要があります
elasticSearch (ES) をインストールします
6.3.0 バージョンのダウンロード アドレス:
https://www.elastic.co/downloads/past-releases/elasticsearch-6-3-0
コースのおすすめ→: 「Elasticsearch 全文検索実戦」 (実践ビデオ)
IK のインストール
Win 環境で、bin コマンドを入力します。
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.0/elasticsearch-analysis-ik-6.3.0.zip## という行を実行してから、es を再起動します。また、es にはホットリスタート機能がないため、デーモン起動後に再起動したい場合は、プロセスを強制終了してから es を起動するしかありません
php クライアントをインストールします
composer require elasticsearch/elasticsearch
ik リモート辞書を構成します
IKAnalyzer.cfg.xml で応答構成を変更します<!--用户可以在这里配置远程扩展字典 --> <entry key="remote_ext_dict">http://xxx.com/getDic.php</entry> <!--用户可以在这里配置远程扩展停止词字典--> <entry key="remote_ext_stopwords">http://xxx.com/getDicStop.php</entry>「java.security.AccessControlException:」のような場合:アクセスが拒否されました (java.net.SocketPermission 127.0.0.1:8080 connect,resolve)」エラーが発生した場合の解決策は、%JAVA_HOME%/jre6/lib/security/java.policy ファイルを見つけて、権限 java.net.SocketPermission "127.0" を追加することです。 .0.1:8080","connect "; その後、es を再起動します。
ik リモート辞書について
拡張辞書内の単語はフィルターで除外され、拡張辞書内の単語は除外されます。拡張ストップ ワードはフィルターで除外されます。つまり、さまざまな人気の単語など、特定の単語を 1 つの単語として扱いたい場合は、それらを拡張辞書に追加します。特定の単語をフィルターで除外したい場合は、拡張ストップ ワードに追加します。 PHP 関連の知識の詳細については、PHP チュートリアル をご覧ください。
以上がPHP 環境での全文検索に elasticSearch+ik 単語セグメンターを使用するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。