solr:Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。(百度百科)
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-->