Tomcat服务器的IP地址限制方法? [英] Tomcat server IP address restriction methods?
本文介绍了Tomcat服务器的IP地址限制方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我知道我可以在tomcat服务器的context.xml中添加一个Valve,以允许或拒绝某些IP地址:
I knew that I can add a Valve in context.xml in tomcat server to allow or deny some IP address :
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.0\.0\.1" denyStatus="403" />
除了上述配置外,还有其他可以配置IP限制的方法吗?
例如,我可以使用文本文件或数据库存储IP地址以提出IP限制建议吗?
For example, can I use text file or database to store IP addresses for IP restriction propose?
非常感谢您!
推荐答案
您可以动态注册Tomcat的远程地址过滤器.
You can dynamically register Tomcat's Remote Address Filter.
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地址限制方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文