当 URL 以 "/" 结尾时,URL 重写不起作用 asp.net



我有一个 URL 重写,它工作正常,但是当你最后放"/"时它不起作用......

我如何计算出这些网址...请建议

<rewriteMap name="Survey2013">
        <add key="/discount" value="/survey/store/" />
        <add key="/discount/" value="/survey/store/" /> // i have to add this URL as well
        <add key="/discounts" value="/survey/store/" />
        <add key="/discounts/" value="/survey/store/" />    
</rewriteMap>
 <rule name="Redirect for Survey2013" enabled="true">
        <match url=".*" />
        <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
            <add input="{Survey2013:{REQUEST_URI}}" pattern="(.+)" />
        </conditions>
        <action type="Redirect" url="{C:1}" appendQueryString="true" />
    </rule>

您可以更改条件中的模式,以采用带有 pattern="(.+)/?" 的可选尾随/

您的规则将变为:

<rule name="Redirect for Survey2013" enabled="true">
    <match url=".*" />
    <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
        <add input="{Survey2013:{REQUEST_URI}}" pattern="(.+)/?" />
    </conditions>
    <action type="Redirect" url="{C:1}" appendQueryString="true" />
</rule>

最新更新