IIS 7 - URL重写 - “不是文件”条件不起作用

时间:2014-02-13 16:19:10

标签: c# .net iis iis-7 url-rewriting

在IIS 7中,我创建了一个URL重写规则,用于检查不以/

结尾的网址
<rule name="AddTrailingSlashRule1" enabled="true" stopProcessing="true">
          <match url="(.*[^/])$" ignoreCase="true" />
          <conditions logicalGrouping="MatchAll">
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Redirect" url="{R:1}/" />
</rule>

但由于某种原因,这会导致ScriptResource.axd出现问题,因为/ gets被添加到文件的末尾(ScriptResource.axd /?d = 234 ...),我该如何解决这个问题?

任何帮助都将不胜感激。

马特

1 个答案:

答案 0 :(得分:1)

ScriptResource.axd实际上不是文件。所以我认为你唯一的选择就是当url包含ScriptResource.axd(并且不存在其他人; webresource.axd)时修改url正则表达式不匹配。

如果您需要有关正则表达式的帮助,请告诉我们。