首页 | 使用Putty通过Java HTTPProxy Socks代理服务器访问外部网络 >>

urlrewrite重写/隐藏你的链接

Url Rewrite Filter

Home - java.net Project - Download & Install - urlrewrite google group - Manual

Based on the popular and very useful mod_rewrite for apache, UrlRewriteFilter is a Java Web Filter for any J2EE compliant web application server (such as Resin, Orion or Tomcat), which allows you to rewrite URLs before they get to your code. It is a very powerful tool just like Apache's mod_rewrite.

URL rewriting is very common with Apache Web Server (see mod_rewrite's rewriting guide) but has not been possible in most java web application servers. The main things it is used for are:

  • URL Tidyness / URL Abstraction - keep URLs tidy irrespective of the underlying technology or framework (JSP, Servlet, Struts etc).
  • Browser Detection - Allows you to rewrite URLs based on request HTTP headers (such as user-agent or charset).
  • Date based rewriting - Allows you to forward or redirect to other URL's based on the date/time (good for planned outages).
  • Moved content - enable a graceful move of content or even a change in CMS.
  • Tiny/Friendly URL's (i.e. blah.com/latest can be redirected to blah.com/download/ver1.2.46.2/setup.exe)
  • A Servlet mapping engine (see Method Invocation)

UrlRewriteFilter uses an xml file, called urlrewrite.xml (lives in the WEB-INF directory), for configuration. Most parameters can be Perl5 style Regular Expressions. This makes it very powerful indeed.

在Tomcat5.0以及以后版本中对中文的支持:

1,修改UrlRewriter.java,注销代码

// addition as suggested by Connor Barry
// try {
// originalUrl = URLDecoder.decode(originalUrl, "utf-8");
// if (log.isDebugEnabled()) {
// log.debug("after utf-8 decoding " + originalUrl);
// }
// } catch (java.io.UnsupportedEncodingException e) {
// log.warn("the jvm doesn't seem to support decoding utf-8, matches may not occur correctly.");
// return null;
// }
// end addition
2,修改UrlRewriteFilter.java,增加代码

hsRequest.setCharacterEncoding( "GBK" ) ;

或者hsRequest.setCharacterEncoding( "UTF-8" ) ;

标签 :



发表评论 发送引用通报