solr配置,
solr配置
想要在项目里面添加之前做的根据中文回复相关英语短句的小功能,又因为之前的硬盘坏了,只能重新再配置一次solr,虽然之前做的时候有记笔记,但再这次配的时候还是出了不少问题,最主要的还是solr版本的问题,因为上一次配置的时候使用的是jdk1.7,但现在使用的是jdk1.8,java在调用solr的时候出现了jar包冲突,不得不多走了一次流程
所以在使用solr时一定要注意版本
solr配置时请务必注意:
solr版本必须与jdk和tomcat的版本一一对应,否则可能花上许多时间还找不到问题原因所在
如:jdk1.7+tomcat8+solr5.5.0 对应ik分词器ik-analyzer-5.3.0.jar
jdk1.8+tomcat9+solr7.0.0 对应ik分词器ikanalyzer-solr6.5-2018.zip
开始配置solr,在这里我使用的是jdk1.8+tomcat9+solr7.0.0
- solr各版本下载地址:
http://archive.apache.org/dist/lucene/solr/
- tomcat下载地址:
https://tomcat.apache.org/download-90.cgi
- ik分词器两个版本的:
下载地址关注底部公众号发送"ik"获取
cd /home/soft
- 解压tomcat和solr7.0.0
tar -zxvf apache-tomcat-9.0.17.tar.gz
tar -zxvf solr7.0.0
(注意:如果是在windows上直接解压上传的需要在tomcat的bin目录下执行chmod a+x *.sh)为tomcat的命令授予执行权限
- 进入tomcat的webapps目录新建solr文件夹
cd apache-tomcat-9.0.17/webapps/
mkdir solr
- 将solr-7.0.0\server\solr-webapp\webapp目录下的文件复制到tomcat/webapps/solr中
cp -r /home/soft/solr-7.0.0/server/solr-webapp/webapp/* /home/soft/apache-tomcat-9.0.17/webapps/soft
- 在tomcat下创建solrhome文件加(创建这个文件的位置不重要,只要后面在web.xml配置文件中指向的位置对了就行),将solr-7.0.0\server\solr文件加内的文件复制到solrhome中
cd /home/soft/apache-tomcat-9.0.17/
mkdir solr-home
cp -r /home/soft/solr-7.0.0/server/solr/* /home/soft/apache-tomcat-9.0.17/solr-home
- 在solrhome中创建核文件夹namecore(文件名任意),但是在后面solr页面中添加核时需要使用现在创建的这个名字,将solr-7.0.0\server\solr\configsets_default\conf目录复制到核文件中,注意这里复制的是conf文件夹
cp -r /home/soft/solr-7.0.0/server/solr/configsets/_default/conf home/soft/apache-tomcat-9.0.17/solr-home/namecore
- 修改/home/soft/apache-tomcat-9.0.17/webapps/soft/WEB-INF/web.xml中配置solr-home地址
首先进入solrhome文件夹
cd /home/soft/apache-tomcat-9.0.17/solrhome
输入pwd获取到solrhome的正确路径
/home/soft/apache-tomcat-9.0.17/solr-home (将该地址复制)
编辑web.xml文件
vi /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF/web.xml
将下面部分代码注释取消,并填入solr-home地址
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/home/soft/apache-tomcat-9.0.17/solr-home(将之前复制的地址放在这里)</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
----------------------分割线--------------------------------
找到<security-constraint>内容</security-constraint>将这一部分配置注释
如下:
<!--<security-constraint>内容</security-constraint> -->
如果这部分代码不注释,tomcat访问的时候会报403,对了solr7.0.0的访问地址是:“ip:端口号/solr/index.html”与solr5.5.0版本有所不同,主页面不再是以前的admin.html
- 给solr提供日志文件输出,
cd /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF
mkdir classes
cp -r /home/soft/solr-7.0.0/server/resources/log4j.properties /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF/classes
cp -r /home/soft/solr-7.0.0/server/lib/ext/* /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF/lib
ik分词器配置
解压文件
unzip ikanalyzer-solr6.5-2018.zip
cd ikanalyzer-solr6.5-2018
将ext.dic、IKAnalyzer.cfg.xml、stopword.dic放在solr/WEB-INF/classes/目录下
cp -r /home/soft/ikanalyzer-solr6.5-2018/ext.dic /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF/classes
cp -r /home/soft/ikanalyzer-solr6.5-2018/IKAnalyzer.cfg.xml /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF/classes
cp -r /home/soft/ikanalyzer-solr6.5-2018/stopword.dic /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF/classes
另外两个jar包放在solr/WEB-INF/lib目录下
cp -r /home/soft/ikanalyzer-solr6.5-2018/*.jar /home/soft/apache-tomcat-9.0.17/webapps/solr/WEB-INF/lib
配置ik分词
vi /home/soft/apache-tomcat-9.0.17/solr-home/namecore/conf/managed-schema
在底部</schema>上面添加
<!--业务域类型定义-->
<field name="content_ik_nostore" type="text_ik" indexed="true" stored="false"/>
<fieldType name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer">
</analyzer>
</fieldType>
<!--业务域名-->
<field name="任意名称" type="text_ik" indexed="true" stored="true"/>
<field name="任意名称" type="text_ik" indexed="true" stored="true"/>
以上就是solr和ik的配置
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。