ASP.NET MVC 4 应用程序是不是必须位于 IIS 8 上站点的根文件夹中?
Posted
技术标签:
【中文标题】ASP.NET MVC 4 应用程序是不是必须位于 IIS 8 上站点的根文件夹中?【英文标题】:Does ASP.NET MVC 4 application have to be in the root folder of a site on IIS 8?ASP.NET MVC 4 应用程序是否必须位于 IIS 8 上站点的根文件夹中? 【发布时间】:2013-01-23 18:01:07 【问题描述】:我有一个基于 VS 2012 Basic 模板的 ASP.NET MVC 4 应用程序。使用 VS 2012,我可以将应用程序部署到 IIS 服务器的根目录中,例如 c:\inetpub\wwwroot。然后,我可以转到 [http://]mymachine/ 并查看该应用程序。
但是,如果我尝试将应用程序移动到 c:\inetpub\wwwroot\Test,尝试访问 [http://]mymachine/Test 会导致“HTTP 错误 403.14 - 禁止 Web 服务器配置为不列出这个目录的内容。”
我尝试手动移动文件夹,也尝试从 VS 2012 部署到该文件夹,但没有区别。我试图将 web.config 文件移动到 c:\inetpub\wwwroot 中,同时将应用程序的其余部分留在 c:\inetpub\wwwroot\Test 下,但这也不起作用。我必须将 global.asax、global.asax.cs 和 bin 文件夹移动到站点根目录中,但随后整个应用程序又在根文件夹中,这不是我想要的。
有谁知道我正在尝试做的事情是否可行?谢谢。
PS.:对链接格式感到抱歉 - 我使用 [http://] 周围的方括号来防止 *** 将示例 URI 视为链接。
【问题讨论】:
(FWIW:我通常使用http://link:of/textual?importance=only
。)
【参考方案1】:
您需要确保子文件夹已被转换(或创建)为 IIS 中的应用程序。加载 IIS 管理器并在树中找到网站节点下的文件夹,右键单击并选择转换为应用程序。如果未列出,请使用添加应用程序选项。
请记住,默认情况下,子应用程序将从其父应用程序继承 web.config 设置(除其他外)。更多信息请访问MSDN。
【讨论】:
谢谢,这是有道理的,让我更清楚我的解决方案是什么样的。以上是关于ASP.NET MVC 4 应用程序是不是必须位于 IIS 8 上站点的根文件夹中?的主要内容,如果未能解决你的问题,请参考以下文章
Microsoft 'Identity Platform' 是不是(轻松)与'(ASP.NET) Identity Framework' - MVC5 & .NET 4.7.2 集成?
ASP.NET MVC 4 的移动“选择器”此时是不是不可靠?
如何使用 Asp.net MVC 从页面引用位于视图文件夹中的 .js 文件