Azure Static Web Apps でサポートされている言語とランタイム

Azure Static Web Apps には、フロントエンドと API のランタイムバージョンと言語バージョンが重要な 2 つの異なる場所があります。

ランタイム型 説明
フロントエンド フロントエンド アプリケーションをビルドする Web サイトのビルド 手順の実行を担当するバージョン。
API Web アプリケーションで使用される Azure Functions のバージョンとランタイム。

フロントエンド

静的 Web アプリのフロントエンドのビルドに使用するバージョンを指定できます。 多くの場合、既定以外のバージョンの構成は、以前のバージョンを対象とする必要がある場合にのみ必要です。

静的 Web アプリのフロントエンドをビルドするランタイム バージョンは、ファイルの セクションの engines ファイルで指定できます。

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

API

Azure Static Web Apps での API の基になるサポートは、Azure Functions によって提供されます。 詳細については、 Azure Functions でサポートされている言語とランタイムを 参照してください。

Static Web Apps のマネージド関数では、次のバージョンがサポートされています。 アプリケーションに一覧にないバージョンが必要な場合は、 独自の関数を アプリに導入することを検討してください。

API 言語ランタイムのバージョンを構成するには、apiRuntime セクションの platform プロパティを、サポートされている次の値のいずれかに設定します。

言語ランタイムのバージョン オペレーティング システム Azure Functions バージョン apiRuntime 値 サポート終了日
.NET コア 3.1 ウィンドウズ 3.x dotnet:3.1 2022 年 12 月 3 日
.NET 6.0 インプロセス ウィンドウズ 4.x dotnet:6.0 2025 年 4 月 30 日
.NET 8.0 インプロセス ウィンドウズ 4.x dotnet:8.0 2026 年 11 月 10 日
.NET 6.0 分離 ウィンドウズ 4.x dotnet-isolated:6.0 2025 年 4 月 30 日
.NET 7.0 アイソレーション ウィンドウズ 4.x dotnet-isolated:7.0 2025 年 4 月 30 日
.NET 8.0 分離 ウィンドウズ 4.x dotnet-isolated:8.0 2026 年 11 月 10 日
.NET 9.0 分離 ウィンドウズ 4.x dotnet-isolated:9.0 2026 年 11 月 10 日
.NET 10.0 isolated ウィンドウズ 4.x dotnet-isolated:10.0 -
Node.js 12.x Linux 3.x node:12 2022 年 12 月 3 日
Node.js 14.x Linux 4.x node:14 2025 年 4 月 30 日
Node.js 16.x Linux 4.x node:16 2025 年 4 月 30 日
Node.js 18.x Linux 4.x node:18 2025 年 5 月 31 日
Node.js 20.x Linux 4.x node:20 -
Node.js 22.x Linux 4.x node:22 -
Python 3.8 Linux 4.x python:3.8 2025 年 4 月 30 日
Python 3.9 Linux 4.x python:3.9 -
Python 3.10 Linux 4.x python:3.10 -
Python 3.11 Linux 4.x python:3.11 -

.NET

.NET アプリのランタイムバージョンを変更するには、csproj ファイルで TargetFramework の値を変更し、staticwebapp.config.json ファイルの apiRuntime の値を対応するバージョンに設定します。 apiRuntime値がcsprojファイルで定義したものと一致しているか確認してください。

.NET 10.0は孤立ワーカーモデルでのみサポートされています。 APIがインプロセスモデルを使っている場合は、まず分離ワーカーモデルに移行してください。 .NET 10.0をターゲットにするために必要なパッケージやプロジェクト設定については、孤立したワーカーモデルでC# Azure Functionsを実行するためのガイドをご覧ください。

以下の例は、TargetFrameworkファイル内のAPI言語ランタイムバージョンとして、.NET 10.0の要素を更新する方法を示しています。

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

以下の例の構成では、apiRuntime プロパティを使用して、staticwebapp.config.json ファイル内で API 言語ランタイム バージョンとして .NET 10.0 isolated を選択する方法を示しています。

{
  ...
  "platform": {
    "apiRuntime": "dotnet-isolated:10.0"
  }
  ...
}

Node.js

次の構成例では、 apiRuntime プロパティを使用して、 staticwebapp.config.jsonファイルの API 言語ランタイム バージョンとして Node.js 20 を選択する方法を示します。

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

Python

次の構成例は、 apiRuntime プロパティを使用して、 staticwebapp.config.jsonファイルの API 言語ランタイム バージョンとして Python 3.11 を選択する方法を示しています。

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

v4.x でプロキシを再度有効にする

Azure Functions では、 v4.x でのプロキシの再有効化がサポートされています。 静的 Web アプリのマネージド関数でプロキシサポートを有効にするには、アプリケーション設定で SWA_ENABLE_PROXIES_MANAGED_FUNCTIONS を true に設定します。

注

v4.x ではプロキシがサポートされていますが、アプリがプロキシに依存しないように、Azure API Management とマネージド関数アプリの統合の使用を検討してください。

非推奨

注

Azure Functions v3 が廃止されたので、Static Web Apps では Python 3.8 の API ランタイム サポートに Azure Functions v4 が使用されます。 アプリを再デプロイして、この変更を有効にします。 お勧めしませんが、環境変数の USEV3_FOR_PYTHON38 を true に設定することで、v3 に戻すことができます。

Azure Static Web Apps では、次のランタイムは非推奨です。 ランタイムの変更の詳細については、「 Azure Static Web Apps での API 言語ランタイム バージョンの指定 」および「 Azure Functions バージョン 3.x からバージョン 4.x へのアプリの移行」を参照してください。

  • .NET コア 3.1
  • Node.js 12.x