繁体   English   中英

IIS 8.5重写:传递动态参数

[英]IIS 8.5 rewrite: pass dynamic parameter

我正在使用流动的重写映射:

 <rewrite>
      <rewriteMaps>
        <rewriteMap name="OldToNew">
          <add key="/area.aspx?id=1" value="/area/1" />
          <add key="/area.aspx?id=2" value="/area/2" />
          <add key="/area.aspx?id=3" value="/area/3" />
          <add key="/area.aspx?id=4" value="/area/4" />

        </rewriteMap>
      </rewriteMaps>
      <rules>
        <rule name="Rewrite rule1 for OldToNew">
          <match url=".*" />
          <conditions>
            <add input="{OldToNew:{REQUEST_URI}}" pattern="(.+)" />
          </conditions>
          <action type="Redirect" url="{C:1}" appendQueryString="false"  />
        </rule>
      </rules>
    </rewrite>

与其编写每个area.aspx页面, area.aspx将页面的“ id”值作为参数传递给键值。

我怎样才能做到这一点?

谢谢。

rewritemap网址之间没有关联,则rewritemap用于关联2个网址。 您可以使用正则表达式匹配。

以下规则应该有效

<rewrite>
  <rules>
    <rule name="Rule1">
      <match url=".*" />
      <conditions>
        <add input="{REQUEST_URI}" pattern="/area.aspx?id=(.+)" />
      </conditions>
      <action type="Redirect" url="/area/{C:1}" appendQueryString="false"  />
    </rule>
  </rules>
</rewrite> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM