Azure Web 应用程序:堆栈设置

msl*_*lot 6 azure azure-web-app-service azure-webapps

我可以通过门户为 webapp 设置我的堆栈: 通过门户进行堆栈设置

我通过 ARM 模板部署我的基础设施:

 "apiVersion": "2015-08-01",
  "type": "Microsoft.Web/sites",
  "name": "[variables('name')]",
  "location": "[parameters('location')]",
  "dependsOn": [
    "[concat(parameters('customer'),'-','webapp-small','-' , 'plan','-',parameters('env'))]"
  ],
  "properties": {
    "clientAffinityEnabled": false,
    "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', concat(parameters('customer'),'-','webapp-small','-' , 'plan','-',parameters('env')))]",
    "siteConfig": {
      "alwaysOn": "[parameters('webAppAlwaysOn')]",
      "use32BitWorkerProcess": true,
      "connectionStrings": [
      ],
      "appSettings": [
        {
          "name": "WEBSITE_LOAD_CERTIFICATES",
          "value": "[reference(variables('name')).thumbprint]"
        },
        {
          "name": "WEBSITE_RUN_FROM_PACKAGE",
          "value": 0
        },
        {
          "name": "WEBSITE_ADD_SITENAME_BINDINGS_IN_APPHOST_CONFIG",
          "value": 1
        },
        {
          "name": "ASPNETCORE_ENVIRONMENT",
          "value": "[parameters('AspNetCoreEnvironment')]"
        },
        {
          "name": "EnvironmentOptions:ResourceGroupPostfix",
          "value": "[parameters('env')]"
        },
        {
          "name": "APPINSIGHTS_INSTRUMENTATIONKEY",
          "value": "[reference(variables('aiWebName')).InstrumentationKey]"
        },
        {
          "name": "IpWhiteList",
          "value": "[parameters('whitelist')]"
        }
      ]
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

部署到此的代码是一个 .NET Core 2.2 应用程序。我看不到任何可以设置堆栈设置的地方:https://docs.microsoft.com/en-us/azure/templates/microsoft.web/2018-11-01/sites,但是当我部署.NET Core 代码,一切正常。“堆栈设置”有什么用?为什么我不能通过ARM设置?我什至需要设置它吗?我想运行时可以猜测它是一个 .NET Core 应用程序,然后让它自动工作。

1_1*_*1_1 6

堆栈设置是设置您要使用哪种语言及其版本。App Service 支持六种语言堆栈:ASP.NET Core Node.js PHP Python Java Ruby . 如果您在Windows上创建,则在门户上可以选择5个堆栈(.NET .NET Core PHP Python Java)。如果您选择linux,则在门户上可以选择7个堆栈(Ruby Node PHP .NET Core Java8 Java11 Python)。

\n\n

看起来您在 Windows 操作系统上创建了一个应用程序服务,因此在初始 Web 应用程序创建后,\xe2\x80\x99t 不再需要识别应用程序是 .NET Core 应用程序,因为 .NET Core 位已经安装在底层工人身上。您可以查看此官方文档以了解有关 Azure 应用服务配置的更多信息。

\n