注
これは、この記事の最新バージョンではありません。 現在のリリースについては、 この記事の .NET 10 バージョンを参照してください。
警告
このバージョンの ASP.NET Core はサポート対象から除外されました。 詳細については、 .NET および .NET Core サポート ポリシーを参照してください。 現在のリリースについては、 この記事の .NET 10 バージョンを参照してください。
この記事では、Blazor WebAssembly を使用してをホストおよびデプロイする方法について説明します。
以下に示す nginx.conf ファイルは、Nginx が対応するファイルをディスク上で見つけられないときに index.html ファイルを送信するよう Nginx を構成する方法を示すために、簡略化されています。
events { }
http {
server {
listen 80;
location / {
root /usr/share/nginx/html;
try_files $uri $uri/ /index.html =404;
}
}
}
とlimit_reqで limit_req_zoneを設定する場合、Blazor WebAssemblyアプリでは、アプリによって行われた比較的多数の要求に対応するために、大きなburst/rateパラメーター値が必要になる場合があります。 最初に、値を 60 以上に設定します。
http {
limit_req_zone $binary_remote_addr zone=one:10m rate=60r/s;
server {
...
location / {
...
limit_req zone=one burst=60 nodelay;
}
}
}
"503 - サービスを利用できません" という状態コードを要求が受信していることがブラウザー開発者ツールまたはネットワーク トラフィック ツールで示されている場合、この値を増やします。
運用環境での Nginx Web サーバーの構成に関する詳細については、「Creating NGINX Plus and NGINX Configuration Files」 (NGINX Plus と NGINX 構成ファイルの作成) を参照してください。
Linux でのホストされた展開 (Nginx)
ForwardedHeadersOptions を使用して、X-Forwarded-For および X-Forwarded-Proto ヘッダーを転送するようアプリを構成するには、プロキシ サーバーとロード バランサーで動作するように ASP.NET Core を構成する のガイダンスに従ってください。
サブアプリ パスの構成など、アプリのベース パスの設定の詳細については、「 ASP.NET Core Blazor アプリのベース パス」を参照してください。
「ASP.NET Core SignalR アプリ」のガイダンスに従って、次のように変更します。
プロキシバッファリング(
)の構成を削除します。この設定は にのみ適用され、 アプリのクライアントとサーバー間の通信には関係ないためです。 locationパスを/hubroute(location /hubroute { ... }) からサブアプリパス/{PATH}(location /{PATH} { ... }) に変更します。ここで、{PATH}プレースホルダーはサブアプリ パスです。次の例では、ルート パス
/で要求に応答するアプリのサーバーを構成します。http { server { ... location / { ... } } }次の例では、
/blazorのサブアプリ パスを次のように構成します。http { server { ... location /blazor { ... } } }
その他のリソース
- Nginx 搭載の Linux で ASP.NET Core をホストする
- Nginx のドキュメント:
- Microsoft 以外のサポート フォーラムの開発者:
ASP.NET Core