Solr8在tomcat上的部署

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包):

Solr8在tomcat上的部署_第1张图片

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

Solr8在tomcat上的部署_第2张图片

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

Solr8在tomcat上的部署_第3张图片

缺少相关文件会导致项目启动失败并报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的标签。

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

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

  
    solr/home
    “你的solrhome位置”
    java.lang.String
  

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

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

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

Solr8在tomcat上的部署_第4张图片

 

你可能感兴趣的:(Solr,Tomcat)