gpt4 book ai didi

url-rewriting - 如何使用 UrlRewriteFilter 从带有查询字符串的 url 中删除 ".jsp"

转载 作者:行者123 更新时间:2023-12-03 12:19:04 25 4
gpt4 key购买 nike

出于某种原因,我需要使用 UrlRewriteFilter 从 Spring MVC 项目中带有查询字符串的 Url 中删除“.jsp”。

比如我想改

http://localhost:8080/admin/project.jsp?m_product=GA&m_code1=QULQ2U

http://localhost:8080/admin/project?m_product=GA&m_code1=QULQ2U

我尝试了各种规则,但都没有成功。

例如,当我将规则设置为

<rule>
<from>/admin/project.jsp?(.+)</from>
<to type="redirect">/admin/project?$1</to>
</rule>

UrlRewriteFilter 会改变

admin/project.jsp?m_product=GA&m_code1=QULQ2U

admin/project?p

当我使用以下规则转义查询字符串前的问号时

<rule>
<from>/admin/project.jsp\?(.+)</from>
<to type="redirect">/admin/project?$1</to>
</rule>

UrlRewriteFilter 不会重写 URL。

感谢您的帮助。

最佳答案

如果您想使用 Tuckey url 重写过滤器从项目中删除扩展名(.jsp),那么它可能对您有所帮助。

From    http://locatohost:8080/urlrewrite/feedback.jsp To    http://locatohost:8080/urlrewrite/feedback
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
"http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<urlrewrite>
<rule>
<from>^/?([a-z]+)$</from>
<to>/$1.jsp</to>
</rule>
</urlrewrite>

如果你想反之亦然(意味着你想从页面超链接中删除 .jsp)然后使用下面的规则

  <outbound-rule>
<from>^/?([a-z]+)(.(jsp|jspx))$</from>
<to>$1</to>
</outbound-rule>

这样当你使用

<LI><A href="complaints.htm">Complaints</A></LI>

那么它将被写在页面中

<LI><A href="complaints">Complaints</A></LI>

关于url-rewriting - 如何使用 UrlRewriteFilter 从带有查询字符串的 url 中删除 ".jsp",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6824660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com