【问题标题】:Share azure app service for 1 website and 1 web api为 1 个网站和 1 个 Web api 共享 azure 应用服务
【发布时间】:2017-11-04 05:10:04
【问题描述】:

我试图弄清楚是否可以为两个不同的项目(因此同时运行)共享 1 个“Azure 应用服务”:

  • 1 .NET 4.5 网站 (MVC5)
  • 1 .NET 核心 WebApi

或者一个 Azure 应用服务仅限于一个网站/webapi?

PS:我知道我可以混合使用 WebApi 控制器和 MVC 控制器,但我无法将这两个项目合并为一个 .NET 4.5 或一个 .NET 核心项目

【问题讨论】:

    标签: c# asp.net azure asp.net-web-api


    【解决方案1】:

    是的,您可以在一个应用服务计划中托管多个应用。您的应用程序甚至可以运行不同的堆栈,例如三个 Node 站点、两个 ASP.NET MVC5 站点和一个 PHP API。

    来自https://docs.microsoft.com/en-us/azure/app-service/azure-web-sites-web-hosting-plans-in-depth-overview

    Azure 应用服务中的 Web 应用、移动应用、API 应用、函数应用(或函数)都在应用服务计划中运行。同一订阅、区域和资源组中的应用可以共享应用服务计划。

    分配给应用服务计划的所有应用程序共享由它定义的资源。在单个应用服务计划中托管多个应用时,这种共享可以节省资金。

    【讨论】:

    • 您在谈论“应用服务计划”。这是否意味着我应该创建两个都与同一个“应用服务计划”相关联的“应用服务”?这是否意味着一个额外的“应用服务”不需要额外的钱?
    • 如果计划至少是基本层。然后它有您的应用程序使用的专用实例。您在那里为实例付费,因此应用数量无关紧要。
    • 我可以为不同的应用程序使用相同的基本 URL 吗?我可以将 myazurewebsite.com 用于网站,将 myazurewebsite.com/api/MyApi/Action/Id 用于 WebApi 吗?
    • 您可以使用子域来指向不同的应用程序。如果你想使用你描述的 URL 方案,那么你需要在它前面有一个应用程序网关来处理路由:azure.microsoft.com/en-us/services/application-gateway
    • 好吧,子域的东西不是我现在需要学习的东西,所以我会留到以后。你能帮我做最后一部分吗?我如何真正完成上述工作?我有一个新的“免费”Azure 帐户、1 个应用服务和 1 个服务计划。如我的问题所述,我有 1 个解决方案(VS2017)和 2 个项目。如何在我的 azure app 服务中获取我的 web api 和我的网站?仅仅发布就会“删除”前一个,对吗?
    猜你喜欢
    • 1970-01-01
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多