Tomcat 6的IP地址限制

我需要保护我的一个Web应用程序中的某个文件夹,使其不能从定义的IP范围之外访问。

有了O'Reilly的Tomcat提示,我发现:

<Context path="/path/to/secret_files" ...> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1" deny=""/> </Context> 

要走了吗?

我没有那么多的tomcatconfiguration,所以我为什么把这些限制放在眼里。 我把这个在我的web.xml或这是我需要添加到一些一般的tomcat conf文件?

如果我们想限制ip地址而不考虑上下文path,我们应该在server.xml(引擎名称)中添加以下行:

  <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1"/> 

这将拒绝所有除了127.0.0.1的ip地址

如果你想让多个IP使用以下

 <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1,10.10.12.13,10.132.12"/> 

如果你想拒绝只有一个IP,并允许所有其他IP使用以下

  <Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="127.0.0.1"/> 

对于多个IP的

 <Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="127.0.0.1,10.10.12.13,10.132.12"/> 

这个问题解决了我的问题。