Solr8在tomcat上的部署

本文档详细介绍了如何在Linux环境下部署Apache Solr 8.0.0到Tomcat服务器,包括准备JDK和Tomcat,下载Solr,拷贝web工程及相关文件,设置Solrhome,修改配置文件,以及解决启动时可能出现的问题。

Apache Solr™8.0.0已于2019年3月14日发布。

Solr8最低支持的Java版本是Java8,但由于官方在升级日志中声明:

ALPN is not supported in Java 8 or lower version therefore when a node started in Java 8 or a lower version with SSL enabled, it will send and can only be able to handle HTTP/1.1 requests. In case of using SSL Java 9 or latter versions are recommended.

所以建议使用9以上的Java版本 。

本篇使用linux环境举例,windows下的部署基本相同。

(我用了图形化linux,因为懒)

1、首先准备Solr所需的JDK和Tomcat

2、在Apache的Solr官网上下载对应版本Solr,并解压

​ https://lucene.apache.org/solr/ ​

3、拷贝web工程:将solr-8.0.0/server/solr-webapp/下的webapp文件夹拷贝到Tomcat的webapps目录下并改成你要用的名字 (在4和更早的版本中会以war包形式存在,需解压war包):

webapp

4、拷贝日志工具相关jar包:将solr-8.0.0/server/lib/ext下的jar包拷贝至上面Tomcat下Solr的/WEB-INF/lib/目录下

5、拷贝metrics相关jar包:将solr-8.0.0/server/lib下metrics相关jar包也拷贝至/WEB-INF/lib/目录下

缺少相关文件会导致项目启动失败并报filterStart Exception(启动过滤器异常)

linux下:

严重 [*] org.apache.catalina.core.StandardContext.filterStart 启动过滤器异常
 java.lang.NoClassDefFoundError: com/codahale/metrics/MetricSet

windows下:

  严重 [*] org.apache.catalina.core.StandardContext.filterStart Exception starting filter SolrRequestFilter
 java.lang.NoClassDefFoundError: com/codahale/metrics/MetricSet

6、拷贝log4j2配置文件:将solr-8.0.0/server/resource目录中的log4j配置文件拷入web工程目录WEB-INF/classes(自行创建目录) 

需要注意的是从Solr7开始内置log4j升级至log4j2,而log4j2不再支持properties配置文件而需要使用json或xml来配置。

因为不使用日志文件,直接注释掉log4j2.xml的<RollingFile>标签。

7、创建solrhome:拷贝solr-8.0.0/server/solr目录到你想要的位置,Solrhome是存放solr服务器所有配置文件的目录。

8、指定solrhome位置:修改solrweb工程的web.xml文件,在web-app节点下添加

  <env-entry>
    <env-entry-name>solr/home</env-entry-name>
    <env-entry-value>“你的solrhome位置”</env-entry-value>
    <env-entry-type>java.lang.String</env-entry-type>
  </env-entry>

 注:该配置在6以及之前的版本是已经存在但被注释掉的,从7及之后的版本已被删除但目前(8.0.0)仍能使用

之后注释掉<security-constraint>整个标签,这个标签负责安全认证,这里暂不介绍。

启动Tomcat即可访问。(ip):(port)/(工程名)/index.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值