Maison > Article > développement back-end > Utilisez le segmenteur de mots elasticSearch+ik pour la recherche en texte intégral dans un environnement PHP
La première chose à noter est que si vous devez activer le segmenteur de mots ik, la version du segmenteur de mots doit être cohérente avec la version es, c'est-à-dire que le segmenteur de mots 6.3.0 a besoin de la même version 6.3.0. de son soutien.
Installer Java
Le package d'installation Win-64bit doit être trouvé sur le site officiel de Java en anglais
Installer elasticSearch (ES)
Adresse de téléchargement de la version 6.3.0 :
https://www.elastic.co/downloads/past-releases/elasticsearch-6-3-0
Recommandation de cours→ :"Elasticsearch Full Text Search Practical Combat"(Vidéo pratique)
Du cours "Solution de concurrence de données de niveau dix millions (théorique + pratique)》
Installer IK
Dans l'environnement Win, entrez bin avec la ligne de commande, puis exécutez
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.0/elasticsearch-analysis-ik-6.3.0.zip
Puis redémarrez es. De plus, es n'a pas de fonction de redémarrage à chaud. Si vous souhaitez redémarrer après le démarrage du démon, vous pouvez uniquement tuer le processus puis démarrer es
Installer le client php
composer require elasticsearch/elasticsearch
Configurer le dictionnaire distant ik
Modifier la configuration de la réponse dans 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>
Si quelque chose comme "java.security.AccessControlException : accès refusé (java.net. SocketPermission 127.0.0.1:8080 connect,resolve)", la solution consiste à trouver le fichier %JAVA_HOME%/jre6/lib/security/java.policy et à ajouter l'autorisation java.net.SocketPermission "127.0. 0.1:8080","connect "; Puis redémarrez es
À propos du dictionnaire distant ik
Les mots du dictionnaire étendu seront filtrés et les mots du les mots vides étendus seront filtrés ;
Autrement dit, si vous souhaitez que certains mots soient traités comme un seul mot, comme divers mots populaires, ajoutez-les au dictionnaire étendu
Si vous le souhaitez ; souhaitez filtrer certains mots, ajoutez-les Ajoutés aux mots vides étendus.
Pour plus de connaissances sur PHP, veuillez visiter le Tutoriel PHP !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!