我在获取IIS URL Rewrite 2规则以使用非英语(瑞典语)字符(åöö)时遇到问题。我在Windows Server 2012 R2(IIS 8.5)上。
此规则适用于英文字符:
<rule name="RedirectSubWebKeepURI" enabled="true" stopProcessing="true">
<match url="^department/lawyers/(.*)" />
<action type="Redirect" url="/section/lawyers/{R:1}" />
</rule>
但是假设我将“律师”拼写为“律师”(不是一个真实的词!),我如何使它起作用?
以下示例均无效:
<match url="^department/låwyers/(.*)" /> [real character]
<match url="^department/l%C3%A5wyers/(.*)" /> [URL encoded 'å']
我想念什么? This previous question说您必须使用{UNENCODED_URL}
变量,但这是否意味着我必须将所有URL:s与".*"
匹配,并将实际的匹配逻辑移至条件?如果是这样,我真的无法弄清楚应该如何改写我的规则...
感谢帮助!
答案 0 :(得分:0)
尝试像这样使用内部UrlEncode{}
:
<action type="Redirect" url="/section/lawyers/{UrlEncode:{R:1}}" />