如何访问在jsp中键入的当前页面URL?

时间:2013-05-20 09:40:11

标签: java .htaccess jsp servlets tuckey-urlrewrite-filter

我使用 .htaccess 文件进行网址重写。要启用.htaccess文件,我将 urlrewritefilter-4.0.3.jar 文件放在WEB-INF \ lib \中在web.xml里面我添加了以下代码。

   <filter>
      <filter-name>UrlRewriteFilter</filter-name>
          <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>

默认为false。使用mod_rewrite样式配置文件(如果这是真的并且未指定confPath,则confPath将设置为/WEB-INF/.htaccess)

   <init-param>
       <param-name>modRewriteConf</param-name>
       <param-value>true</param-value>
   </init-param>
   </filter>
   <filter-mapping>
    <filter-name>UrlRewriteFilter</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
   </filter-mapping>`

我的.htacces文件代码是

    RewriteRule ^/()$ index.jsp [NC,L]
    RewriteRule ^/login/?$ login.jsp [NC,L] #Handle requests for "login"
    RewriteRule ^/logout/?$ login.jsp [NC,L] #Handle requests for "login"
    RewriteRule ^/contact_us/?$ contact.jsp [NC,L] #Handle requests for "contactus"
    RewriteRule ^([/A-Za-z0-9_]+)$ user.jsp [NC,L]
    RewriteRule ^([/A-Za-z0-9_]+)/$ user.jsp [NC,L]

我有一个user.jsp文件。我使用正则表达式来进行url maping,这样我输入的url就会打开user.jsp文件。 我想访问user.jsp文件中输入的实际url。 假设我输入http://localhost:8080/project/abhiramgiri。我用了

  <%
       String getURL=request.getRequestURI();
       out.print(getURL);
  %>

它将文件的路径显示为http://localhost:8080/project/user.jsp 其实我需要http://localhost:8080/project/abhiramgiri。 它不显示实际输入的URL。它检索原始路径。 请帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

显示网络浏览器的网址是什么?根据您的应用程序,您可以使用JavaScript来使用document.URL获取URL(请参阅get-current-url-with-javascript) 你必须考虑安全。