应该去你的<Context>
元素中server.xml中:
<Context
path="/tcadmin"
docBase="${catalina.home}/server/webapps/admin"
privileged="true"
>
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.0\.0\.1"
/>
</Context>
记住,该字符串值是正则表达式的模式,所以正则表达式的特殊字符(例如点(。))必须用反斜杠进行转义。
编辑:回复OP的评论。 我认为您需要在您的Web应用中实施FILTER,并将其配置为接受或拒绝基于其远程地址IP的请求。远程地址可以从ServletRequest
检索到的对象传入doFilter
方法。
你在你的web.xml文件中声明过滤器:
<filter>
<filter-name>GatekeeperFilter</filter-name>
<filter-class>your.package.GatekeeperFilter</filter-class>
<init-param>
<param-name>allowedNetwork</param-name>
<param-value>192\.168\.2\.*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>GatekeeperFilter</filter-name>
<url-pattern>/path/to/protected/folder</url-pattern>
</filter-mapping>
了解什么需要做的,接受初始化参数链接的文章。我认为,为了您的决定,您可以无耻地从RequestDumperValve复制代码。
我添加了一个有关过滤器部分,我的答案。我认为这是你需要的。 – 2009-12-03 13:33:49