我有一个运行在Server 2008 R2机器上的网站,我想限制一个特定的jsp页面访问到一个IP地址。 在Tomcat的context.xml文件中,我想出了如何使用RemoteAddr Valve来限制对目录的访问,但我无法弄清楚如何为单个文件执行此操作。 这甚至有可能吗?
我发现context.xml文件不适合做这样的configuration。 它实际上可以使用Tomcat的RemoteAddrFilter在web.xml文件中完成。 在下面给出的例子中,filter指定了一个IP(xxxx)来允许,所有其他IP将被阻塞。 “filter”部分后面的“filter-mapping”标签指定了要限制的URL,在本例中为“something.jsp”页面。 这个页面对每个人都是有限的,但是允许的IP地址,其他人都会得到一个403页面。
<filter> <filter-name>Remote Address Filter</filter-name> <filter-class>org.apache.catalina.filters.RemoteAddrFilter</filter-class> <init-param> <param-name>allow</param-name> <param-value>xxxx</param-value> </init-param> </filter> <filter-mapping> <filter-name>Remote Address Filter</filter-name> <url-pattern>/something.jsp</url-pattern> </filter-mapping>