我使用 .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。它检索原始路径。
请帮我解决这个问题。
答案 0 :(得分:0)
显示网络浏览器的网址是什么?根据您的应用程序,您可以使用JavaScript来使用document.URL获取URL(请参阅get-current-url-with-javascript) 你必须考虑安全。