次の方法で共有


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

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

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

フロントエンド

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

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

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

API(アプリケーション・プログラミング・インターフェース)

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

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

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

言語ランタイムのバージョン オペレーティング システム Azure Functions バージョン apiRuntime サポート終了日
.NET Core 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 -
.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 -
.NET 9.0 分離 ウィンドウズ 4.x dotnet-isolated:9.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 -
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 値を設定する場合は、その値が csproj ファイルで定義したものと一致するようにしてください。

次の例では、csproj ファイルの TargetFramework 要素を更新して、API 言語ランタイム バージョンとして NET 8.0 を設定する方法を示します。

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

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_FUNCTIONStrue に設定します。

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

非推奨

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

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

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