【发布时间】:2014-07-19 04:02:42
【问题描述】:
谁能告诉我如何检查静态文件是否存在作为重写规则条件。
我在 IIS8 上,我的网络应用程序是它自己的网站。我想添加一个重写规则来检查文件是否存在,如果存在则应用重写。这是我的代码:
<rewrite>
<rules>
<rule name="Find static gravatar" stopProcessing="true">
<match url="^images/animage.png$" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="true">
<add input="{QUERY_STRING}" pattern="i=(.+)" />
<add input="/favicon.ico" matchType="IsFile" />
</conditions>
<action type="Rewrite" url="/Somewhere/Else/images/{C:1}.png" appendQueryString="false" logRewrittenUrl="true" />
</rule>
</rules>
</rewrite>
点击网址/images/animage.png?i=SS
在绝望中,我正在检查一个我知道存在的文件 - favicon.ico。如果我注释掉检查文件的第二个条件,它就可以工作。有了条件,它就失败了。
【问题讨论】:
-
我猜这与您在网站图标输入中的路径有关,请参阅forums.iis.net/t/1190232.aspx?Rewrite+rules+simplify
-
@BrockHensley 是的 :) 将其添加为答案,我会提出要点 ;)
标签: asp.net-mvc iis rewrite iis-8