[英]IIS Redirect Regex doesn't work with a space - %20 in URL
所以我有一个简单的问题但不知何故似乎没有用。 我有一个网址http://www.domain.com/%20#axzz2ZX4J0KAS
,我想重定向到http://www.domain.com/page-name.htm
。 我在IIS URL Rewrite / web.config中尝试了很多组合,它们似乎都在测试模式对话框中工作,但在浏览器中都不起作用。
1。
<rule name="Redirect%20InHomePage" enabled="true" stopProcessing="true">
<match url="^(.+)domain\.com/(\s|%20)(.+)" ignoreCase="true" />
<action type="Redirect" url="http://www.domain.com/page-name.htm" />
</rule>
2。
<match url="(.+)/%20(.+)" ignoreCase="true" />
3。
<match url="(.+)domain.com/ (.+)" ignoreCase="true" />
4。
<match url="(.+)domain.com/(\s|%20)(.+)" ignoreCase="true" />
正如您所看到的,我尝试了以上所有模式,它们在“测试模式”对话框中都能正常工作,但是当我浏览URL时,它总是将%20转换为空格,而规则不适用于重定向。
如果有人知道我错过了什么,请帮助我解决这个简单但尚未解决的问题。
不要在您的匹配网址中包含域名。
如果你想要处理你的网址中是否有跟踪代码,那么你可能想要使用这样的东西:
<rule name="RedirectSpaceInHomePage" stopProcessing="true">
<match url="^\s(#\.*)?$" />
<action type="Redirect" url="page-name.htm" />
</rule>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.