Tomcat服务器IP地址限制方法?

我知道我可以在tomcat服务器的context.xml中添加一个Valve来允许或拒绝一些IP地址:

<Valve className="org.apache.catalina.valves.RemoteAddrValve"

allow="127\.0\.0\.1" denyStatus="403" />

除了上述配置外,

例如,我可以使用文本文件或数据库存储IP地址以提出IP限制建议吗?

非常感谢你!!!

回答:

您可以动态注册Tomcat的远程地址过滤器。

http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html#Remote_Address_Filter

看起来像这样:

@WebListener

public class MyServletContextListener implements ServletContextListener {

@Override

public void contextInitialized(ServletContextEvent sce) {

// Get IP addresses from the DB or text file.

...

ServletContext sc = sce.getServletContext();

FilterRegistration fr;

fr = sc.addFilter("RemoteAddrFilter", "org.apache.catalina.filters.RemoteAddrFilter");

fr.addMappingForUrlPatterns(EnumSet.of(DispatcherType.REQUEST), true, "/*");

fr.setInitParameter("allow", "127\\.0\\.0\\.1");

fr.setInitParameter("denyStatus", "403");

}

}

以上是 Tomcat服务器IP地址限制方法? 的全部内容, 来源链接: utcz.com/qa/415208.html

回到顶部