因为solr-6.3.0比较新,在centos中部署的教程也比较少,所以我自己就部署了一次,有什么不对的地方请大家多多指教
环境如下
系统:centos6.7
JDK:1.8.0_111
Tomcat:apache-tomcat-8.5.6
solr:solr-6.3.0
部署前提
部署solr之前需要将JDK和Tomcat配置好,具体的配置教程我这里就不阐述了,请各位去Google一下,我这里可以推荐一个网址教大家怎么部署
开始部署
1. 我把下载好的solr-6.3.0放在/usr/local/solr目录下(solr-6.3.0下载地址)
2. 执行解压命令解压solr-6.3.0.tgz
tar -zxvf solr-6.3.0.tgz
3. 将solr-6.3.0/server/solr-webapp目录下的webapp复制到tomcat下的webapps下面,并改名为solr
cp -a webapp /usr/local/tomcats/apache-tomcat-8.5.6/webapps/
mv /usr/local/tomcats/apache-tomcat-8.5.6/webapps/webapp solr
4. 将solr-6.3.0/server/lib/ext/下的所有jar包复制到apache-tomcat-8.5.6/webapps/solr/WEB-INF/lib/目录下
cp /usr/local/solr/solr-6.3.0/server/lib/ext/*.jar /usr/local/tomcats/apache-tomcat-8.5.6/webapps/solr/WEB-INF/lib/
5. 将solr-6.3.0/server/resources/下的log4j.properties文件复制到apache-tomcat-8.5.6/webapps/solr/WEB-INF/目录下
cp /usr/local/solr/solr-6.3.0/server/resources/log4j.properties /usr/local/tomcats/apache-tomcat-8.5.6/webapps/solr/WEB-INF/
6. 将solr-5.3.1/dist下的solr-dataimporthandler-5.3.1.jar和solr-dataimporthandler-extras-5.3.1.jar复制到apache-tomcat-8.5.6/webapps/solr/WEB-INF/lib/目录下
cp /usr/local/solr/solr-6.3.0/dist/solr-dataimporthandler-* /usr/local/tomcats/apache-tomcat-8.5.6/webapps/solr/WEB-INF/lib/
7. 修改apache-tomcat-8.5.6/webapps/solr/WEB-INF下面的web.xml文件
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/usr/local/solr/solr-6.3.0/server/solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
8. 启动tomcat
9. 在地址栏输入网址 http://你的IP地址:8080/solr/index.html,一看卧槽怎么是403啊,心中肯定有无数的动物在奔腾
10. 其实只要把apache-tomcat-8.5.6/webapps/solr/WEB-INF下面的web.xml的以下代码屏蔽就可以了,因为这段代码做了权限控制,所以导致无权访问
<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>
11. 屏蔽之后,刷新任务栏,看到以下页面就表示成功啦