次の方法で共有


YARP の使用を開始する

YARP は、コア プロキシ機能を提供するライブラリとして設計されており、モジュールを追加または置き換えることでカスタマイズできます。 YARP は現在、NuGet パッケージとコード サンプルとして提供されています。 今後、プロジェクト テンプレートと事前構築済みの実行可能ファイル (.exe) を提供する予定です。

YARP は .NET Core インフラストラクチャ上に実装され、Windows、Linux、または MacOS で使用できます。 開発は、SDKとお好みのエディター、たとえばMicrosoft Visual Studio やVisual Studio Code を使用して行えます。

YARP 2.3.0 では、.NET 8 以降がサポートされています。

.NET SDK は、https://dotnet.microsoft.com/download/dotnet/からダウンロードできます。

新しいプロジェクトを作成する

以下の手順を使用してビルドされたプロジェクトの完全なバージョンは、基本的な YARP サンプル にあります。

まず、コマンド ラインを使用して空の ASP.NET Core アプリケーションを作成します。

dotnet new web -n MyProxy

または、Visual Studio 2022 で新しい ASP.NET Core Web アプリケーションを作成し、プロジェクト テンプレートの [空] を選択します。

パッケージ参照を追加する

Yarp.ReverseProxy バージョン 2.3.0 以降のパッケージ参照を追加します。

dotnet add package Yarp.ReverseProxy

.NET アプリへのパッケージの追加に関するガイダンスについては、「パッケージ利用のワークフロー」 (NuGet ドキュメント) の "パッケージのインストールと管理" に関する記事を参照してください。 NuGet.org で正しいパッケージ バージョンを確認します。

YARP ミドルウェアを追加する

YARP ミドルウェアを使用するように Program ファイルを更新します。

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddReverseProxy()
    .LoadFromConfig(builder.Configuration.GetSection("ReverseProxy"));
var app = builder.Build();
app.MapReverseProxy();
app.Run();

設定

YARP の構成は、 appsettings.json ファイルで定義されます。 詳細については、「 YARP 構成ファイル」を参照してください。

構成は、プログラムで提供することもできます。 詳細については、「 YARP 機能拡張構成プロバイダー」を参照してください。

使用可能な構成オプションの詳細については、 RouteConfigClusterConfigを参照してください。

{
 "Logging": {
   "LogLevel": {
     "Default": "Information",
     "Microsoft": "Warning",
     "Microsoft.Hosting.Lifetime": "Information"
   }
 },
 "AllowedHosts": "*",
 "ReverseProxy": {
   "Routes": {
     "route1" : {
       "ClusterId": "cluster1",
       "Match": {
         "Path": "{**catch-all}"
       }
     }
   },
   "Clusters": {
     "cluster1": {
       "Destinations": {
         "destination1": {
           "Address": "https://example.com/"
         }
       }
     }
   }
 }
}

プロジェクトを実行する

.NET CLI を使用する場合は、サンプルのディレクトリまたはdotnet run内のdotnet run --project <path to .csproj file>を使用します。

Visual Studio で、[ 実行 ] ボタンをクリックしてアプリを起動します。