IIS 7.5 url重写帮助-奇怪的查询字符串

IIS 7.5 url重写帮助-奇怪的查询字符串,iis,url-rewriting,iis-7.5,Iis,Url Rewriting,Iis 7.5,我有一个入站链接,里面有很多垃圾。我的站点只是加载主页并忽略查询字符串,但是我想检测查询字符串并重定向到一个干净的主页url url如下所示: 'dmjdlgsbve%253E2'lfzxpset%253E'sbol%253E2'f%253E'vsm%253EIUUUQ%253B00xxx%252Fopdmjdlz%252Fdpn0'gffe%253Eopqbz'qsjdf%253E'tbq%253Ebd7g8g73cc3c7d%253AF59253EFD2F62DCD'zbsht%253Exx

我有一个入站链接,里面有很多垃圾。我的站点只是加载主页并忽略查询字符串,但是我想检测查询字符串并重定向到一个干净的主页url

url如下所示:

'dmjdlgsbve%253E2'lfzxpset%253E'sbol%253E2'f%253E'vsm%253EIUUUQ%253B00xxx%252Fopdmjdlz%252Fdpn0'gffe%253Eopqbz'qsjdf%253E'tbq%253Ebd7g8g73cc3c7d%253AF59253EFD2F62DCD'zbsht%253Exxx%252Fopdmjdlz%252Fdpn


我似乎无法制定一个规则来捕获此查询字符串并让我重定向到。有什么想法吗?

这很容易做到。首先,您必须确保您位于主页上(即空请求URL),然后在条件中检查非空查询字符串。如果两者都是这种情况,则执行永久重定向回同一URL(=不带查询字符串的URI)

比如:


如果需要,可以添加更具体的条件,使其仅与此特定入站链接匹配

更新: 我怀疑在你的URL中有一些双重URL编码。例如,%253E可能是%3E,因为%25是编码的百分比符号URL。%3E是编码的>字符URL。因此,我认为你会有更多的运气:

<rule name="Remove query string" stopProcessing="true">
    <match url="^$" />
    <conditions>
        <add input="{QUERY_STRING}" pattern="^c%3E'dmjdlgsbve%3E2'lfzxpset%3E'sbol%3E2'f%3E'vsm%3Eiuuq;00xxx/opdmjdlz/dpn0'gffe%3Eopqbz'qsjdf%3E'tbq%3Ebd7g8g73cc3c7d:f5925f3efd2f62dcd'zbsht%3Exxx/opdmjdlz/dpn$" />
    </conditions>
    <action type="Redirect" url="{URL}" appendQueryString="false" />
</rule>

我只想检测这个特定的查询字符串,但其中的一些字符似乎正在脱离过滤器。。。比如百分号和其他一些。我想保留其他查询字符串不变。
<rule name="Remove query string" stopProcessing="true">
    <match url="^$" />
    <conditions>
        <add input="{QUERY_STRING}" pattern="^c%3E'dmjdlgsbve%3E2'lfzxpset%3E'sbol%3E2'f%3E'vsm%3Eiuuq;00xxx/opdmjdlz/dpn0'gffe%3Eopqbz'qsjdf%3E'tbq%3Ebd7g8g73cc3c7d:f5925f3efd2f62dcd'zbsht%3Exxx/opdmjdlz/dpn$" />
    </conditions>
    <action type="Redirect" url="{URL}" appendQueryString="false" />
</rule>