我们在iis6中运行了一个ASP.NET 3.5应用程序,我们正在迁移到iis7和集成管道。我们的应用程序做了一些非常简单的URL重写来检查如下的URL:
website.com/dealer/page.aspx
剥离“dealer”,在数据库中查找上下文并转到page.aspx。
在IIS6中,这是一个通配符映射。我在iis7的web.config中将模块移到了正确的位置:
<system.webServer>
<modules>
<add name="ModuleRewriter"
type="Insignia.Catalog2.ModuleRewriter, Insignia.Catalog2"
preCondition="" />
而且它起作用了——几乎。像这样的路径工作:
website.com/dealer/page.aspx
website.com/dealer/
后者默认为index.aspx页。我的问题是,这个不是:
website.com/dealer
注意末尾缺少的斜线。我得了404分。我错过了什么?
更新:
它与静态文件处理程序有关-如果我禁用了它,则URL会正确映射,但静态内容不起作用…