我正在尝试使用UrlRewriteFilter 4.0.3阻止IP到我的应用程序的某些部分。但无论我尝试什么,我都无法让它发挥作用。有人可以帮忙吗?
我已将urlrewritefilter-4.0.3.jar添加到 - / var / lib / tomcat7 / webapps / myapp / WEB-INF / lib中 我在/ var / lib / tomcat7 / webapps / myapp / WEB-INF /中添加了urlrewrite.xml。
我已将以下行添加到/ var / lib / tomcat / webapps / myapp / WEB-INF /中的web.xml中:
<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
<init-param>
<param-name>confReloadCheckInterval</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>statusEnabled</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>logLevel</param-name>
<param-value>DEBUG</param-value>
</init-param>
<init-param>
<param-name>statusEnabledOnHosts</param-name>
<param-value>localhost</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
已写入以下条件并将其放在urlrewrite.xml
中 <rule>
<condition type="remote-addr">^123\.123\.42\.36$</condition>
<from>/myapp/login*</from>
<set type="status">403</set>
<to>null</to>
</rule>
我认为这样做会阻止IP访问我的应用程序的/ myapp / login部分,但它不起作用。
关于如何绕过这个的任何建议都会非常感激,因为我只想阻止个人IP范围到我的应用程序的某些部分。
由于 奥利
答案 0 :(得分:0)
答案 1 :(得分:0)
<from>^/login*</from>
<to last="true">null</to>
此外,您可以在web.xml中配置org.apache.catalina.filters.RemoteAddrFilter
过滤器。
http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html#Remote_Address_Filter