solr7.4 tomcat环境下搭建(windows)

时间:2023-10-13 10:17:32

-版本solr-7.4.0
-环境 Windows  jdk1.8
-启动方式:部署在apache-tomcat-8.5.28,以下简称Tomcat

1. 将solr-7.4.0\server\solr-webapp下的webapp复制到Tomcat\webapps下,并改名solr;
2. 将solr-7.4.0\server\lib下的ext下的所有jar包复制到Tomcat\webapps\solr\WEB-INF\lib下,以及
    solr-7.4.0\server\lib下以metrics开头的jar、gmetric4j-1.0.7.jar复制到Tomcat\webapps\solr\WEB-INF\lib下;
3. 在Tomcat\webapps\solr\WEB-INF下创建classes文件夹,并把solr-7.4.0\server\resources下的log4j2.xml复制到 classes文件下;
4. 修改修改Tomcat\bin下的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=D:\dev_tools\apache-tomcat-8\apache-tomcat-8.5.28-solr\solr_home\logs"

solr7.4 tomcat环境下搭建(windows)

5. 在任意地方创建文件夹solr_home,把solr-7.4.0\server下solr下的所有文件复制到这个solr_home下,在这里,我创建在Solr-7.4.0的同级目录下了,
并且修改配置文件Tomcat\webapps\solr\WEB-INF\web.xml,将下面配置的注释放开,黑体部分更改为你的solr-home地址。
<env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>D:\dev_tools\apache-tomcat-8\apache-tomcat-8.5.28-solr\solr_home</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
</env-entry>solr7.4 tomcat环境下搭建(windows)
并注释下面部分:
<!-- Get rid of error message 
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Disable TRACE</web-resource-name>
      <url-pattern>/</url-pattern>
      <http-method>TRACE</http-method>
    </web-resource-collection>
    <auth-constraint/>
  </security-constraint>
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Enable everything but TRACE</web-resource-name>
      <url-pattern>/</url-pattern>
      <http-method-omission>TRACE</http-method-omission>
    </web-resource-collection>
  </security-constraint>
-->

solr7.4 tomcat环境下搭建(windows)

6. 配合solr日志记录存放地址,在solr-home下新建logs文件夹,此处与配置4位置配置路径一致; 
7. 拷贝solr-7.4.0下contrib和dist文件夹至solr-home目录下。 
8. 在solr-home目录下新建new_core文件夹;并拷贝solr-7.4.0\server\solr\configsets_default\目录下conf文件夹至solr-home\new_core下。
9. 修改solr-home\new_core\conf\solrconfig.xml文件,如下
<!--
  <lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-clustering-\d.*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-langid-\d.*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-\d.*\.jar" />
  -->
    <lib dir="${solr.install.dir:../}/contrib/extraction/lib" regex=".*\.jar" />
    <lib dir="${solr.install.dir:../}/dist/" regex="solr-cell-\d.*\.jar" />
     <lib dir="${solr.install.dir:../}/contrib/clustering/lib/" regex=".*\.jar" />
    <lib dir="${solr.install.dir:../}/dist/" regex="solr-clustering-\d.*\.jar" />
     <lib dir="${solr.install.dir:../}/contrib/langid/lib/" regex=".*\.jar" />
    <lib dir="${solr.install.dir:../}/dist/" regex="solr-langid-\d.*\.jar" />
     <lib dir="${solr.install.dir:../}/contrib/velocity/lib" regex=".*\.jar" />
    <lib dir="${solr.install.dir:../}/dist/" regex="solr-velocity-\d.*\.jar" />
    <lib dir="${solr.install.dir:../}/dist/" regex="ojdbc\d.*\.jar" />
    <lib dir="${solr.install.dir:../}/dist/" regex="solr-dataimporthandler\d.*\.jar" />
solr7.4 tomcat环境下搭建(windows)
10. 启动Tomcat,访问http://localhost:8080/solr/index.html

===================== ok 看到页面即表示搭建成功====================

引入ik分词器 下载地址:https://pan.baidu.com/s/1shNBxP4sNzfJ0UAhRJ6dNg
11. 配置Ik分词器,首先导入ik的jar  ik-analyzer-solr5-5.x 和 solr-analyzer-ik-5.1.0 两个jar包

导入Tomcat\webapps\solr\WEB-INF\lib下

然后配置solr_home\new_core\conf下的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>
  到此IK分词设置完成

solr7.4 tomcat环境下搭建(windows)

启动tomcat,访问http://localhost:8080/solr/index.html

solr7.4 tomcat环境下搭建(windows)