Поделиться через


Поддерживаемые языки и среды выполнения в статических веб-приложениях Azure

Статические веб-приложения Azure имеют два разных места, где важны версии среды выполнения и языка, на интерфейсе и в API.

Тип среды выполнения Описание
Front end (Сервер переднего плана) Версия, отвечающая за выполнение шагов сборки веб-сайта, создающих интерфейсное приложение.
API Версия и среда выполнения Функций Azure, используемые в веб-приложении.

Внешний интерфейс

Вы можете указать версию, используемую для создания внешнего интерфейса статического веб-приложения. Настройка версии, отличной от по умолчанию, часто необходима только в том случае, если вам нужно использовать более ранние версии.

Вы можете указать версию среды выполнения, которая создает интерфейсную часть статического веб-приложения в файлеpackage.json в engines разделе файла.

{
  ...
  "engines": {
   "node": ">=14.0.0"
  }
}

API (Интерфейс программирования приложений)

Базовая поддержка API в статических веб-приложениях Azure предоставляется функциями Azure. Дополнительные сведения см. в поддерживаемых языках и средах выполнения Функций Azure .

Следующие версии поддерживаются для управляемых функций в статических веб-приложениях. Если приложению требуется версия, не указанная, рассмотрите возможность внедрения собственных функций в приложение.

Чтобы настроить версию среды выполнения языка API, задайте apiRuntime для свойства в platform разделе одно из следующих поддерживаемых значений.

Версия среды выполнения языка Операционная система Версия для Функций Azure Значение apiRuntime Дата окончания поддержки
.NET Core 3.1 Виндоус 3.x dotnet:3.1 3 декабря 2022 г.
В процессе .NET 6.0 Виндоус 4.x dotnet:6.0 30 апреля 2025 г.
Встроенная .NET 8.0 Виндоус 4.x dotnet:8.0 -
Изолированный .NET 6.0 Виндоус 4.x dotnet-isolated:6.0 30 апреля 2025 г.
Изолированный .NET 7.0 Виндоус 4.x dotnet-isolated:7.0 30 апреля 2025 г.
Изолированная версия .NET 8.0 Виндоус 4.x dotnet-isolated:8.0 -
.NET 9.0 изолированный Виндоус 4.x dotnet-isolated:9.0 -
Node.js 12.x Линукс 3.x node:12 3 декабря 2022 г.
Node.js 14.x Линукс 4.x node:14 30 апреля 2025 г.
Node.js 16.x Линукс 4.x node:16 30 апреля 2025 г.
Node.js 18.x Линукс 4.x node:18 31 мая 2025 г.
Node.js 20.x Линукс 4.x node:20 -
Python 3.8 Линукс 4.x python:3.8 30 апреля 2025 г.
Python 3.9 Линукс 4.x python:3.9 -
Python 3.10 Линукс 4.x python:3.10 -
Python 3.11 Линукс 4.x python:3.11 -

.СЕТЬ

Чтобы изменить версию среды выполнения в приложении .NET, измените TargetFramework значение в csproj-файле . Хотя это необязательно, если вы задаёте значение apiRuntime в файле staticwebapp.config.json, убедитесь, что оно соответствует значению, указанному в csproj-файле.

В следующем примере показано, как обновить TargetFramework элемент для NET 8.0 в качестве версии среды выполнения языка API в csproj-файле .

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    ...
  </PropertyGroup>
...

Node.js

В следующем примере конфигурации показано, как использовать apiRuntime свойство для выбора Node.js 20 в качестве версии среды выполнения языка API в файле staticwebapp.config.json .

{
  ...
  "platform": {
    "apiRuntime": "node:20"
  }
  ...
}

Питон

В следующем примере конфигурации показано, как использовать apiRuntime свойство для выбора Python 3.11 в качестве версии среды выполнения языка API в файле staticwebapp.config.json .

{
  ...
  "platform": {
    "apiRuntime": "python:3.11"
  }
  ...
}

Повторное включение прокси-серверов в версии 4.x

Функции Azure поддерживают повторное включение прокси-серверов в версии 4.x. Чтобы включить поддержку прокси-сервера в управляемых функциях для статического веб-приложения, установите SWA_ENABLE_PROXIES_MANAGED_FUNCTIONS в true в настройках приложения.

Замечание

Хотя прокси-серверы поддерживаются в версии 4.x, рекомендуется использовать интеграцию управления API Azure с управляемыми приложениями-функциями, поэтому ваше приложение не зависит от прокси-серверов.

Устаревание

Замечание

Теперь, когда функции Azure версии 3 прекращены, статические веб-приложения используют Функции Azure версии 4 для поддержки среды выполнения API для Python 3.8. Повторно разверните приложение, чтобы включить это изменение. Хотя это не рекомендуется, можно вернуться к версии 3, установив для переменной USEV3_FOR_PYTHON38 среды значение true.

Следующие среды выполнения больше не поддерживаются в статических веб-приложениях Azure. Дополнительные сведения об изменении среды выполнения см. в статье "Указание версии среды выполнения языка API" в статических веб-приложениях Azure и перенос приложений из Функций Azure версии 3.x на версию 4.x.

  • .NET Core 3.1
  • Node.js 12.x