【问题标题】:ASP.NET MVC - disable browsing folders , allowing access to aspx files without specifying pathASP.NET MVC - 禁用浏览文件夹,允许在不指定路径的情况下访问 aspx 文件
【发布时间】:2015-05-05 08:45:19
【问题描述】:
在我的 ASP.NET MVC5 应用程序中,在 myProject 的根文件夹中,我有一个包含 page.aspx 的文件夹“子文件夹”。当我在控制器中执行某些操作时,它重定向到子文件夹/page.aspx,但在浏览器的地址栏中显示“www.mysite.com/subfolder/page.aspx”。我的目标是重定向到 page.aspx,不允许浏览文件夹并在地址栏中显示“www.mysite.com/page”。
有什么想法吗?
【问题讨论】:
标签:
asp.net
asp.net-mvc
redirect
asp.net-mvc-5
asp.net-mvc-routing
【解决方案1】:
只需使用MapPageRoute 路由到 Route.config 中的静态文件。
routes.MapPageRoute(
routeName: "aspx",
routeUrl: "page",
physicalFile: "~/Subfolder/page.aspx",
checkPhysicalUrlAccess:false
);
此外,如果您想禁止导航到物理 url,请在 web.config 中设置一个拒绝
<location path="Subfolder/page.aspx">
<system.web>
<authorization>
<deny users="*"/>
</authorization>
</system.web>
</location>