0

我的 web.config 中有以下 url 重写代码

我想将任何.htm 转发到brand.aspx。

所以如果有人输入

测试1.htm

测试2.htm

测试3.htm

会去brand.aspx。但是,如果服务器中有一个实际的文件调用“test1.htm”,则以下 url 重写将起作用,然后它将重定向到 brand.aspx。如果没有文件存在,它只会返回 404 而不是重定向到 brand.aspx。有人知道为什么吗?多谢。

<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="test" stopProcessing="false">
<match url="(.*)\.htm$" ignoreCase="true" /> 
<action type="Rewrite" url="brand.aspx" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
4

1 回答 1

0

有一个类似的线程 Using a custom URL rewriter, IIS6, and urls with .htm, .html, etc

我之前遇到过类似的问题,我制作了一个自定义 IHTTPModule

为此我使用了指南

http://msdn.microsoft.com/en-us/library/ms227673.aspx

于 2012-07-26T11:18:38.090 回答