URL 重写 requestURI 到 NVP

Posted

技术标签:

【中文标题】URL 重写 requestURI 到 NVP【英文标题】:URL Rewrite requestURI to NVP 【发布时间】:2013-12-23 06:10:31 【问题描述】:

我正在尝试在 /WEB-INF/urlrewrite.xml 中编写一个通用规则,该规则将采用任意 URI 并将根标识符后面的标识符作为名称值对附加。

例如:

localhost:8084/URLRewrite/Fruits/Yellow/Banana/banana.jsp

成为

localhost:8084/URLRewrite/Fruits/Yellow/Banana/banana.jsp&key0=Fruits&key1=Yellow&key2=Banana

我知道这会涉及到正则表达式以及参数的歧义。

类似味道的东西是这样的:

<rule>
    <from>^/world/([a-z]+)/([a-z]+)$</from>
    <to>/world.jsp?country=$1&amp;city=$2</to>
</rule>

例子:

输入:

  <a href="/world/usa/nyc">nyc</a>

输出:

  <a href="<%= response.encodeURL("/world.jsp?country=usa&amp;city=nyc") %>">nyc</a>

任何帮助或建议将不胜感激。

【问题讨论】:

【参考方案1】:

试试这个:

<rule>
    <from>^/world/([a-z]+)/([a-z]+)$</from>
    <to type="redirect">/world.jsp?country=$1&amp;city=$2</to>
</rule>

也许您在配置文件中缺少属性 type 和值 redirect

【讨论】:

以上是关于URL 重写 requestURI 到 NVP的主要内容,如果未能解决你的问题,请参考以下文章

URL重写到子域

什么是伪静态,url 重写是截取传入web 请求并自动将请求重定向到其他 url

URL 重写 - 名称到数字 (Apache)

将 URL 重写规则添加到 Wordpress

thinkphp5 部署到iis服务器url重写

关于IIS7 URL重写的问题