solr-6.4.2安装+分词器配置 一、solr安装 二、分词器配置

solr下载地址:http://archive.apache.org/dist/lucene/solr/6.4.2/

1、解压solr软件包:
tar xf solr-6.4.2.tgz

2、copy需要的文件以及jar包
将solr项目copy到tomcat的webapps目录下并命名为solr
cp -r solr-6.4.2/server/solr-webapp/webapp /data/tomcat/webapps/solr
将solr-6.4.2/server/lib/ext/目录下的jar文件复制到solr/WEB-INF/lib/目录下
cp solr-6.4.2/server/lib/ext/* /data/tomcat/webapps/solr/WEB-INF/lib/
将solr-6.4.2/dist/目录下的solr-dataimporthandler-6.4.2.jar和solr-dataimporthandler-extras-6.4.2.jar文件复制到solr/WEB-INF/lib/目录下
cd solr-6.4.2/dist/
cp solr-dataimporthandler-6.4.2.jar solr-dataimporthandler-extras-6.4.2.jar /data/tomcat/webapps/solr/WEB-INF/lib/

3、创建solr的家目录并去web.xml中配置
将solr-6.4.2/server/solr目录复制到data目录下并更名为solr-home
cp -r solr-6.4.2/server/solr /data/solr-home
vim /data/tomcat/webapps/solr/WEB-INF/web.xml修改solr-home的目录位置
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/data/tomcat/solr-home</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>

4、在tomcat下的solr项目的WEB-INF下创建classes目录,然后把solr-6.4.2/server/resources下的log4j.properties粘贴过去
mkdir /data/tomcat/pre_publish_solr/webapps/solr/WEB-INF/classes
cp solr-6.4.2/server/resources/log4j.properties /data/tomcat/webapps/solr/WEB-INF/classes/
把solr-6.4.2/server/lib下的metrics-core-3.1.2.jar、metrics-ganglia-3.1.2.jar、metrics-graphite-3.1.2.jar、metrics-jetty9-3.1.2.jar、metrics-jvm-3.1.2.jar这几个jar包放到tomcat下的solr项目的WEB-INF/lib目录下。否则会抛出异常
cd solr-6.4.2/server/lib
cp metrics-core-3.1.2.jar metrics-ganglia-3.1.2.jar metrics-graphite-3.1.2.jar metrics-jetty9-3.1.2.jar metrics-jvm-3.1.2.jar /data/tomcat/webapps/solr/WEB-INF/lib/

5、配置solr的访问权限
solr默认限制了对solr资源的访问,在tomcat中solr下修改web.xml:
本人的修改方法是注释掉了禁止追踪,保留了Enable everything but TRACE,访问时正常的
<!--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-->

二、分词器配置

solr-6.4.2配置中文分词器IK Analyzer
1、将ik-analyzer-solr6.x.jar复制到tomcatwebappssolrWEB-INFlib目录下
2、将stopword.dic、IKAnalyzer.cfg.xml复制到tomcatwebappssolrWEB-INFclasses
3、修改schema文件,打开solr_home ew_coreconfmanaged-schema文件,添加IK分词器配置
<fieldType name="text_ik" class="solr.TextField">
  <!--索引时候的分词器-->
  <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
  <!--查询时候的分词器-->
  <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>