我正在尝试在IIS 6.0上运行asp.net 4.0中的Web表单路由,但我一直在获取404页面。
protected void Application_Start(object sender, EventArgs e)
{
System.Web.Routing.RouteTable.Routes.MapPageRoute
("testRoute", "test/{param}", "~/testing.aspx");
}
在我的web.config
中<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<remove name="UrlRoutingModule"/>
<add name="UrlRoutingModule"
type="System.Web.Routing.UrlRoutingModule, System.Web, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</modules>
<handlers>
<add
name="UrlRoutingHandler"
preCondition="integratedMode"
verb="*" path="UrlRouting.axd"
type="System.Web.HttpForbiddenHandler, System.Web,
Version=2.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"/>
</handlers>
</system.webServer>
我还尝试为网站设置通配符映射。 Path = C:\ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_isapi.dll 取消选中“验证文件是否存在”
我可能做错什么的任何线索?
由于
答案 0 :(得分:0)
我在XP(IIS6)上做同样的事情,但没有那些web.config模块和处理程序设置。我相信那些是AppFabric设置或其他东西。
在创建路线的底部,我也有:
routes.MapPageRoute("Default", "", "~/Default.aspx", false);
表示默认页面。这可能也是你需要的。
同时检查IIS中的添加/删除窗口组件以查看是否已选中路由。