Iis 7 忽略Url重写模块IIS(7.xx)中的静态文件

Iis 7 忽略Url重写模块IIS(7.xx)中的静态文件,iis-7,mapping,url-rewriting,Iis 7,Mapping,Url Rewriting,我已经通过了相关的问题,没有找到任何有帮助的。这是我的问题 我的网站上传的共享服务器正在更新,他们最近安装了最新的IIS(我想是7.5)。他们还安装了重写模块 在此更新之前,我使用通配符(通过aspnet_isapi filter)映射来重写如下路径 mysite.com/contact 到 mysite.com/pages/contact.aspx 现在,我需要在配置文件中使用,但是正则表达式让我头疼 我想重定向所有的 .aspx文件到 pages/[filename].aspx 但是忽略那些

我已经通过了相关的问题,没有找到任何有帮助的。这是我的问题

我的网站上传的共享服务器正在更新,他们最近安装了最新的IIS(我想是7.5)。他们还安装了重写模块

在此更新之前,我使用通配符(通过aspnet_isapi filter)映射来重写如下路径 mysite.com/contact 到 mysite.com/pages/contact.aspx

现在,我需要在配置文件中使用,但是正则表达式让我头疼

我想重定向所有的 .aspx文件到 pages/[filename].aspx

但是忽略那些静态文件,比如 .css、.jpg、.png等

我最终使用:

<rewrite>
        <rules>
            <rule name="wildcard">
                <match url="(.*)" />
                <action type="Rewrite" url="pages/{R:1}.aspx" />
            </rule>
        </rules>
</rewrite>

使用上述方法可以完成以下工作:
mysite.com/contact
etc
但这些不是
mysite.com/contact/
mysite.com/css/style.css
mysite.com/

有人能帮忙吗? 如果你需要更多信息,请告诉我

谢谢

您是否尝试过“不是文件”和“不是目录”条件

<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
     <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>

很抱歉在漫长的8年后接受了这个答案。我已经离开这个网站很长时间了,刚刚重新激活了我的帐户。我甚至不记得是什么解决了这个问题,但我相信你的回答很有帮助。谢谢