我有web.config文件的基本重写规则,该规则将我的url转换为小写。
完美,除了一个问题:我在电子邮件中传递区分大小写的令牌,允许用户更改他们的用户名/电子邮件
如何制定重写规则,使我的url小写,同时使查询字符串区分大小写?
示例:
<rule name="Convert to lower case" stopProcessing="true">
<match url=".*[A-Z].*" ignoreCase="false" />
<action type="Redirect" url="{ToLower:{R:0}}" redirectType="Permanent" />
</rule>
使此Url:http://resources.championscentre.org/ConfirmChangeEmail/abcDEfGhIJKlmn
对此:http://resources.championscentre.org/confirmchangeemail/abcdefghijklmn
但需要:http://resources.championscentre.org/confirmchangeemail/abcDEfGhIJKlmn
正则表达式应该是
^[w:/.]*/
w is [a-zA-Z0-9]
^
锚定了起点。
^[w:/.]*
是任何阿尔法数或/
或:
或.
最后的CCD_ 7确保最后一个CCD_。(假设您的URL不以/结尾)
查看示例
<rule name="Convert to lower case" stopProcessing="true">
<match url="^(.*[A-Z].*)(/.*)" ignoreCase="false" />
<action type="Redirect" url="{ToLower:{R:1}}{R:2}" redirectType="Permanent" />
</rule>