当tomcat多项目部署(一个tomcat下面部署多个项目)时,可能要求某个项目只能通过指定IP进行访问,而其他项目没有限制,则可以进行以下配置(此处以solr为例)
1、修改tomcat/conf/server.xml文件:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> <Context docBase="E:\apache-tomcat-8.5.59\webapps\solr" path="/solr" reloadable="false"> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.115|localhost|127.0.0.1"/> </Context> </Host>
2、如果要限制所有项目的IP
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.115|localhost|127.0.0.1"/> </Host>