我希望我的ASP.NET MVC项目成为我服务器上的子网站。我该怎么做?

时间:2015-05-28 17:28:45

标签: c# asp.net asp.net-mvc razor

所以我构建了我的项目,并通过转到

尝试了
mysite.com/myControllerName1/Index,
mysite.com/myControllerName2/Index,
.
.
.

但实际上我希望该网站位于

mysite.com/mySubfolder

,我已创建的子文件夹,以便我转到

mysite.com/mySubfolder/myControllerName1/Index
mysite.com/mySubfolder/myControllerName2/Index
.
.
.

我认为这就像改变

一样简单
routes.MapRoute(
      name: "Default",
      url: "{controller}/{action}/{id}",
      defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

routes.MapRoute(
      name: "Default",
      url: "mySubfolder/{controller}/{action}/{id}",
      defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

但是在我构建项目后,mysite.com/mySubfolder收到403错误,mysite.com/mySubfolder/myControllerName1/Indexmysite.com/mySubfolder/myControllerName2/Index等收到错误。

我该怎么做?

2 个答案:

答案 0 :(得分:2)

在IIS管理器中,右键单击mySubFolder并选择“转换为应用程序”。

完成后,原始路线应按预期工作。

以下文章有更多细节:
Understanding Sites, Applications, and Virtual Directories on IIS 7

答案 1 :(得分:1)

您可以创建一个MVC区域,并调用mySubfolder区域