我目前正在处理的MVC3站点的"工具"区域。我在站点上集成的工具之一,我需要在虚拟目录中运行。在/Tools 文件夹下设置虚拟目录适用于应用程序本身,但对于导航到/Tools/,我得到"不允许目录列表"。如何告诉 IIS 让 MVC 路由处理此 URL?
我们将在生产中使用 IIS6,因此它使用它很重要。
提前谢谢。
编辑:为清楚起见,这是设置:
- /工具
- /路由工具1
- /Tools/ToolInVirtualDirectory
- /Tools/RoutedTool2
- /工具/
工具的路由工作正常,但由于我必须在根目录下创建一个目录来设置"ToolInVirtualDirectory",IIS 正在劫持"/Tools/"请求并尝试将其发送到目录,忽略路由。
您应该在 Global.asax.cs 中设置routes.RouteExistingFiles = true
。
全局级别播放,因此在设置此属性之前,您必须忽略 css 文件和其他不需要由路由基础结构处理的内容。有关更多想法,请参阅此帖子。
在 Global.asax 的 RegisterRoutes 部分中,添加路由系统忽略的忽略路由。 配置中应该已经有一个 .axd 的示例。