【问题标题】:Configuring IIS (Windows 7) for ASP.NET / ASP.NET MVC 3为 ASP.NET / ASP.NET MVC 3 配置 IIS (Windows 7)
【发布时间】:2011-07-02 12:51:36
【问题描述】:

我正忙于使用 ASP.NET MVC 3 应用程序并使用 Windows 7。目前它使用内置的 Web 服务器来运行 Web 应用程序。我希望它在 IIS 中运行。在将其设置为在 IIS 上运行时,我需要了解任何建议吗?

一个工作人员说我的 Web 应用程序必须位于 wwwroot 目录中,IIS 才能正常工作。我对此的理解是,如果我创建了一个虚拟目录(Web 应用程序可以在任何目录中),那么我应该可以吗?

另外,我可以购买哪些不错的书籍来帮助我更好地理解 IIS?这不必特定于 ASP.NET MVC。我唯一知道如何在 IIS 中做的就是创建一个虚拟目录 :)

当应用程序在 IIS 中运行时,我将如何调试它?

任何建议和互联网文章将不胜感激:)

【问题讨论】:

    标签: asp.net asp.net-mvc iis iis-7 asp.net-mvc-3


    【解决方案1】:

    您可以使用 VS.NET 为您完成工作。在项目的属性页面中,切换到“Web”选项卡并选择“使用本地 IIS Web 服务器”。提供你想要的 url 和 VS。剩下的会做。

    要具体回答您的问题,不,您的站点不必是 IIS 根文件夹的子文件夹,这样才能正常工作,调试也可以正常工作。

    仅供参考:我从不使用开发 Web 服务器并且一直使用 IIS。我的大部分项目都是 IIS 根文件夹的子文件夹,我手动编辑 .proj 文件以将其指向正确的位置。但这并不是一切正常工作所必需的。

    使用 Internet 信息服务管理器,您应该能够做的不仅仅是创建虚拟文件夹。事情就简单多了。

    但是,对于一般的 IIS 和 ASP.NET。我建议您阅读应用程序池及其流程模型(ProcessModel 下的各种选项以及其他部分)。

    MSDN 和http://www.iis.net/ 通常是获取有关 IIS 的所有信息的好地方。

    编辑: 顺便说一句,您可能还想看看最近推出的 IIS Express。它实际上取代了开发服务器,并且在所有意图和目的上都是真正的 IIS 7,因此 IIS 7 的所有功能都可用。另外,如果由于某种原因您无法运行,则无需以管理员身份运行 VS。

    如果您能够在您的计算机上以管理员身份运行 VS.NET,我建议您使用 IIS 7。

    【讨论】:

    • 谢谢。如何在 IIS 中调试 Web 应用程序?
    • 正如我所说的,调试工作正常。在 VS 中按 F5 键,然后离开。不用找了。您会注意到的不同之处在于,事情实际上进展得更快,并且由于您将部署到 IIS(您的生产服务器),因此不会出现在我的开发盒上工作的情况,但是......或者某些事情只是可以的情况'不能使用开发服务器来完成。
    【解决方案2】:

    您可能想查看以下有关在 IIS 下部署 ASP.Net MVC 应用程序的文章:

    通常在 IIS7 下部署 ASP.Net MVC 应用程序与部署标准 ASP.Net 应用程序非常相似,但需要重新编写 MVC 运行时程序集。

    回答您的其他一些问题:

    • 我的应用程序是否位于 wwwroot 目录中以使 IIS 正常工作?

    不,这是不正确的 - 如果您的应用程序不在 wwwroot 目录中,您可以使用虚拟目录。

    • 如何调试在 IIS 中运行的应用程序?

    您需要使用 Visual Studio 使用“调试”->“附加到进程...”命令附加到 w3wp.exe 进程 - 附加后,调试体验应该类似于使用启动应用程序时的体验F5.

    【讨论】:

    • 无需附加到进程等。只需按 F5 键即可调试任何 ASP.NET 应用程序。此外,您可能想要编辑关于“ASP.NET MVC 应用程序工作得很好”的答案。这意味着其他 ASP.NET 应用程序不会:)。只是为了让其他有类似问题的人清楚。
    • @Shiv 谢谢 - 我认为 w3wp.exe 信息对于不使用部署到 IIS 选项的人来说值得包括 - 在 Windows 7 下使用部署到 IIS 意味着您需要以管理员身份运行 VS,这有点痛苦。
    • 嗯...也许这是 VS.NET 2008 及更早版本的问题(我忘记了 VS.NET 2008 是否有这个问题)?我不以管理员身份运行 VS.NET 2010。我是该框的管理员,但我不以管理员身份运行。我确实记得与 VS.NET 2005 有关。但实际上,只需右键单击 VS 快捷方式,然后选择属性,然后在对话框中显示的选项卡之一中,选中以管理员身份运行复选框。任何从事严肃网络开发的人都需要这样做的权利:)
    • 如果您深入了解系统的某些部分并且不想从登录页面开始并一直导航到第 4-10 页,则附加到进程是可以的/很好步入。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-26
    • 1970-01-01
    • 1970-01-01
    • 2015-12-08
    • 2011-11-30
    • 1970-01-01
    相关资源
    最近更新 更多