當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>