脚本宝典收集整理的这篇文章主要介绍了php环境下使用elasticSearch+ik分词器进行全文搜索,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。首先需要说明的一点是,如果需要启用ik分词器,那么分词器的版本必须与es版本一致,即6.3.0的分词器需要同样6.3.0版本的es支持。
安装java
win-64bIT的安装包需要去java英文官网查找
安装elasticSeArch(ES )
6.3.0版本es下载地址:
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远程字典
<!--用户可以在这里配置远程扩展字典 --> <entry key="remote_ext_dict">http://xxx.com/getDic.php</entry> <!--用户可以在这里配置远程扩展停止词字典--> <entry key="remote_ext_stopwords">http://xxx.com/getDicStop.php</entry>
如果重启es时出现类似“java.security.AccessControlException: access denied (java.net.SocketPErmission 127.0.0.1:8080 connect,resolve)”的报错,解决方法为找到%JAVA_HOME%/jre6/lib/security/java.policy 文件,添加permission java.net.SocketPermission "127.0.0.1:8080","connect"; 然后重启es
关于ik远程字典
扩展字典中的词会被筛选出来,扩展停止词中的词会被过滤掉;
即如果你希望某几个字被视作一个词,比如各类流行词汇,则将其加入扩展字典;
如果你希望过滤掉某几个词,则将其加入扩展停止词中。
更多PHP相关知识,请访问PHP教程!
以上就是php环境下使用elasticSearch+ik分词器进行全文搜索的详细内容,更多请关注脚本宝典其它相关文章!
以上是脚本宝典为你收集整理的php环境下使用elasticSearch+ik分词器进行全文搜索全部内容,希望文章能够帮你解决php环境下使用elasticSearch+ik分词器进行全文搜索所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。