IIS重写映射不工作

IIS重写映射不工作,iis,url-rewriting,Iis,Url Rewriting,我正在静态和动态页面上使用iisurlrewriting重建一个站点。重定向都工作得很好。重写模块工作正常 由于站点结构正在改变,我需要能够将“旧的”失效URL重定向到新页面。因此,例如,www.sitename.com/research.asp需要重定向到www.sitename.com/news 我已经按照说明使用重写映射设置了一个规则,并将该规则放在webconfig文件的顶部附近(就在CanonicalHostNameRule下)。但无论我在规则中尝试了什么排列,我都能让它工作。重定向没

我正在静态和动态页面上使用
iisurlrewriting
重建一个站点。重定向都工作得很好。重写模块工作正常

由于站点结构正在改变,我需要能够将“旧的”失效URL重定向到新页面。因此,例如,www.sitename.com/research.asp需要重定向到www.sitename.com/news

我已经按照说明使用重写映射设置了一个规则,并将该规则放在webconfig文件的顶部附近(就在CanonicalHostNameRule下)。但无论我在规则中尝试了什么排列,我都能让它工作。重定向没有发生-我只是得到一个404(不存在).asp页面。这张地图似乎被完全忽略了。再重复一次,我的所有其他规则都运行良好

我尝试过关闭所有其他规则,只使用这一条,但没有运气。同样,我也在这个论坛和其他论坛上搜寻建议(使用REQUEST_URI而不是Filename、重新启动IIS、回收App.pool等),但似乎什么都不起作用。“重定向”url=“{C:1}”只会将我发送回我试图重定向的旧asp页面,如果这有意义的话。FailedRequestTracing中似乎也没有任何帮助

我是不是错过了一些很明显的东西

规则:

<rule name="Redirect Rule" stopProcessing="true">
    <match url="(.*)" />
    <conditions logicalGrouping="MatchAny" trackAllCaptures="false">
        <add input="{StaticRedirects:{REQUEST_FILENAME}}" pattern="(.+)" />
    </conditions>
    <action type="Redirect" url="{C:1}" appendQueryString="false" redirectType="Permanent" />
</rule>

地图:

<rewriteMaps>
    <rewriteMap name="StaticRedirects">
        <add key="research.asp" value="news" />
        <add key="blog.asp" value="news" />
        <add key="mentors.asp" value="interviews" />
        <add key="regulars.asp" value="opinion" />
    </rewriteMap>
</rewriteMaps>


注意-一旦它真正起作用,还有很多其他静态重定向需要添加,这就是为什么我想使用地图。

我可以建议与这个答案进行比较:?这是对我来说最基本的设置。一旦一切正常,我就从那里定制了。