Download the compressed package of solr7.2.1 and the package of tomcat
wget http://mirrors.hust.edu.cn/apache/lucene/solr/7.2.1/solr-7.2.1.tgz
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.0.50/bin/apache-tomcat-8.0.50.tar.gz
Unzip the compressed package and put it in the /opt/ directory
tar -xvf solr-7.2.1.tgz
tar -xvf apache-tomcat-8.0.50.tar.gz
cp apache-tomcat-8.0.50 /opt/tomcat -rf
Create /opt/solr_home directory
mkdir /opt/solr_home
Empty useless items under tomcat
rm -rf /opt/tomcat/webapps/*
Copy the required files to webapps
cp solr-7.2.1/server/solr-webapp/webapp /opt/tomcat/webapps/solr -rf
cp solr-7.2.1/server/lib/ext/* /opt/tomcat/webapps/solr/WEB-INF/lib/
cp solr-7.2.1/server/lib/metrics-*.jar /opt/tomcat/webapps/solr/WEB-INF/lib/
cp solr-7.2.1/dist/solr-dataimporthandler-* /opt/tomcat/webapps/solr/WEB-INF/lib/
Create classes file
mkdir /opt/tomcat/webapps/solr/WEB-INF/classes
Copy log4j.properties to classes
cp solr-7.2.1/server/resources/log4j.properties /opt/tomcat/webapps/solr/WEB-INF/classes/
Modify web.xml
# vim /opt/tomcat/webapps/solr/WEB-INF/web.xml
<!--
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/put/your/solr/home/here</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
-->
去掉注释并修改solr_home:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/opt/solr_home</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
<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>
加上注释:
<!--
<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>
-->
Copy the files needed to run solr to solr_home
cp solr-7.2.1/server/solr/* /opt/solr_home/ -rf
cp -rf solr-7.2.1/dist/ /opt/solr_home/
cp -rf solr-7.2.1/contrib/ /opt/solr_home/
start tomcat
You must add index.html here, otherwise it will be 404
Even if it succeeds