Tomcat8.0搭建solr7.4

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat8.0搭建solr7.4相关的知识,希望对你有一定的参考价值。

什么是Solr
?
Apache Solr 是建立在Lucene(全文搜索引擎)之上,帮助我们从大量的数据中寻找所需信息。多用于搜索,也可用于储存目的。像其他NoSQL数据库一样,它是一种非关系数据储存和处理技术。
?
Solr的安装与配置
?

  • 环境要求:Tomcat8.0+Solr7.4(版本请和我说的一致)
    ?
  • Solr7.4下载: http://archive.apache.org/dist/lucene/solr/ (注意选择.zip格式的,.tgz是Linux系统上要用的)
    ?
    • step1:将solr-7.4.0/server/solr-webapp/下的webapp文件夹拷贝到Tomcat下的webapps目录下(并重命名为solr
      ?
    • step2:将solr-7.4.0/server/lib/ext/下的所有Jar文件全部拷贝到Tomcatwebapps/solr/WEB-INF/lib目录下。
      ?
    • step3:将solr-7.4.0/server/lib下所有metrics开头的jar文件全部拷贝到webapps/solr/WEB-INF/lib目录下。
      ?
    • step4:修改tomcat/webapps/solr/WEB-INF/web.xml文件的第41行,指定solrhome所在的目录
      技术分享图片
      ?
    • step5:修改tomcat/webapps/solr/WEB-INF/web.xml文件的第164行
      技术分享图片
      ?
    • step6: 修改Tomcatin下的catalina.bat,增加solr.log.dir系统变量,指定solr日志记录存放地址。
      if not "%JSSE_OPTS%" == "" goto gotJsseOpts
      set JSSE_OPTS="-Djdk.tls.ephemeralDHKeySize=2048"
      :gotJsseOpts
      set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%"
      set "JAVA_OPTS=%JAVA_OPTS% -Dsolr.log.dir=C:studysolrhomelogs"--增加的一行

      技术分享图片
      ?

    • step7: 配合solr日志记录存放地址,在solr-home下新建logs文件夹
      技术分享图片
      ?
    • step8: 拷贝solr-7.4.0contribdist文件夹至solr-home目录下。
      ?
    • step9: 在solr-home目录下新建new_core文件夹;并拷贝
      solr-7.4.0serversolrconfigsets_default目录下conf文件夹至solr-home ew_core下。

?

    • step10:修改solr-home ewcoreconfsolrconfig.xml文件
      技术分享图片
      ?
    • step12:配置solr_home ew_coreconf下的managed-schema文件加入
      <fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100">    
      <analyzer type="index">  --此处为创建索引分词  
       <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory"  useSmart="false"/>    
       <filter class="solr.LowerCaseFilterFactory"/>    
      </analyzer>    
      <analyzer type="query"> -- 此处为查询分词索引
       <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory"  useSmart="true"/>         
       <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>    
       <filter class="solr.LowerCaseFilterFactory"/>    
      </analyzer>    
      </fieldType>

      ?


?
遇到的坑
?
用tomcat的startup.bat启动可以正常访问solr后台,但是在eclipse里启动tomcat后访问solr就404
?
有坑的原因
?
发现在eclipse中启动tomcat访问tomcat的主页也不能访问,百度后发现是 eclipse将tomcat的项目发布目录(tomcat 目录中的webapp)重定向了,所以你会发现在tomcat安装目录下的webapp目录里面找不到你的项目文件。
?
填坑
?
重新配置下tomcat服务器:在eclipse中的server页面,先把tomcat中部署的项目移除,然后双击tomcat服务,选择Use tomcat installation(Task control of Tomcat installation) 即选择tomcat的安装目录来作为项目的发布目录。
技术分享图片

以上是关于Tomcat8.0搭建solr7.4的主要内容,如果未能解决你的问题,请参考以下文章

solr7.4 安装与使用

Solr7-4的学习与使用

全文检索之Solr7.4服务器

Linux搭建Tomcat

solr6.0学习

Tomcat8.0 支持的WebSocket 总结