shymi_lining 2014-11-11 06:25 采纳率: 0%
浏览 809

java urlRewriter链接伪静态问题

这是我的链接 http://192.168.1.33:8090/microcardPro/v/wap/examen/index/1?weixinid=oJu_zjoL3VOlzi3HjxwFZDmFOC7Y&security=DE16D6A6F7244E97D357E2CBAFE2B070&servId=402881a03ef54ddb013ef551c1820004?source=weixin

其中index后面的1是动态的,只能是数字,后面带的各种参数也是动态的,我在urlRewriter.xml中应该怎么配比较好。

以下是我的配置文件,请指导:
CSDN移动问答

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-03 02:08
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    在你的URLRewriter.xml配置文件中,你可以使用<to>元素来定义处理后的URL。为了处理你提供的示例中的动态部分(例如$1, $2, 和 $3),你需要将它们作为变量传递给<to>元素。这可以通过在<from><to>之间添加一个占位符或自定义表达式来实现。

    首先,我们需要创建一些变量以存储这些动态部分:

    <!-- 创建变量 -->
    <variable name="param1" value="${1}" />
    <variable name="param2" value="${2}" />
    <variable name="param3" value="${3}" />
    <variable name="param4" value="${4}" />
    <variable name="param5" value="${5}" />
    
    

    然后,在<from><to>之间添加一个占位符,并用上述变量替换它:

    <urlrewrite>
        <!-- 原始规则 -->
        <rule>
            <note>列表页伪静态</note>
            <from>^/index/(\d+)/(\w+)/(\w+)/(\w+)/(\w+).htmls</from>
            <to>/
                ${param1} ? weixinid = ${param2} &amp; security ${param3}
                &amp; servId = ${param4}
                &amp; source = ${param5}
            </to>
        </rule>
    </urlrewrite>
    

    这样,当匹配到特定的URL时,<to>元素就会被动态替换为包含原始URL及其参数的部分。这将确保每个页面都能正确显示其相应的参数值。

    如果你希望在其他地方使用这个规则,只需将新的变量设置为对应的值即可。

    评论

报告相同问题?