【发布时间】:2013-07-05 06:29:00
【问题描述】:
我已经在 IIS 中设置了 URL 路由。当我将runAllManagedModulesForAllRequests 设置为 true 时,URL 路由将起作用。
使用以下 web.config(并将 runAllManagedModuesForAllRequests 设置为 false)我得到 404:
<system.web>
<compilation defaultLanguage="c#" debug="true" targetFramework="4.5">
<assemblies>
<add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
</compilation>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="UrlRoutingHandler" />
<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>
<modules>
<remove name="UrlRoutingModule" />
<add name="UrlRoutingModule"
type="System.Web.Routing.UrlRoutingModule,
System.Web.Routing,
Version=3.5.0.0,
Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
</modules>
</system.webServer>
如何仅为某些请求设置 URL 路由?
我已经在 IIS 7.5 和 IIS 8 中测试了此配置。这是在 Web 表单应用程序中。所有 URL 都展示了 404 行为。
【问题讨论】:
-
IIS7? IIS7.5? IIS8?哪些网址?无扩展?或者它是一个 ASP.NET MVC 应用程序,在这种情况下你需要注册你的路由。需要更多信息。
-
在问题正文中添加了几句话来回答您的问题。
-
无扩展和扩展 URL? IE。 .aspx 而没有 .aspx?
-
它是无扩展的(没有 .aspx)
标签: asp.net web-config url-routing