欢迎投稿

今日深度:

solr配置,

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
  1. 解压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的命令授予执行权限
  1. 进入tomcat的webapps目录新建solr文件夹
   cd apache-tomcat-9.0.17/webapps/
   mkdir solr
  1. 将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
  1. 在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
  1. 在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
  1. 修改/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
  1. 给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的配置

www.htsjk.Com true http://www.htsjk.com/solr/38766.html NewsArticle solr配置, solr配置 想要在项目里面添加之前做的根据中文回复相关英语短句的小功能,又因为之前的硬盘坏了,只能重新再配置一次solr,虽然之前做的时候有记笔记,但再这次配的时...
相关文章
    暂无相关文章
评论暂时关闭