当前位置: 首页 > 后端技术 > PHP

php环境下使用elasticSearch+ik分词器进行全文搜索

时间:2023-03-29 18:52:23 PHP

首先要说明的是,如果需要开启ik分词器,分词器的版本必须和es版本一致,即,6.3.0分词器同样需要6.3.0版本的es支持。安装javawin-64bit安装包需要到java英文官网找到并安装ES6.3.0版本es下载地址:https://www.elastic.co/downlo...在IKwin环境下,进入bin命令行,然后执行`elasticsearch-plugininstallhttps:``//github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.0/elasticsearch-analysis-ik-6.3.0.zip`并重新启动es。另外es没有热重启功能。如果想在guard启动后重启,只能先kill进程再启动es。点击进入,免费领取优质PHP学习资料。可以加入。安装php客户端`omposer``require``elasticsearch/elasticsearch`配置ik远程字典在IKAnalyzer.cfg.xml中更改响应配置```http:``//xxx.com/getDic.php````http:``//xxx.com/getDicStop.php`如果类似“java.security.AccessControlException:accessdenied(java.net.SocketPermission127.0.0.1:8080connect,resolve)”的错误,解决方法是找到%JAVA_HOME%/jre6/lib/security/java.policy文件,添加权限java.net.SocketPermission"127.0.0.1:8080","connect";然后RestartesAbouttheikremotedictionary会过滤掉扩展字典里的词,过滤掉扩展停用词里的词;也就是说,如果你想让某些词被视为一个词,比如各种流行词,那么就将它们添加到扩展词典中;如果你想过滤掉某些词,将它们添加到扩展停用词中。