ASP.NET Core アプリケーションのさまざまなホスティング オプションを評価しています。ASP.NET の新しいプログラミング モデルでは、リクエストを一連のミドルウェア (古いIHttpModule
&の混合物IHttpHandler
) で処理します。
認証、静的ファイルの処理、または送信前の応答の圧縮を担当できるミドルウェアを使用できます (いくつか例を挙げると)。ここで混乱が生じます。
責任のコンテキストでサーバーとアプリの境界をどこに設定するか?
応答を圧縮するのはどちらの側ですか? IIS では、これはサーバーによって処理され、web.config で構成されていました。Kestrel はこの機能を提供していないため、これを処理するカスタム ミドルウェアをアプリに実装する必要があります。どちらがより適切ですか?
認証はどうですか?IIS は、認証 (匿名、偽装、フォーム認証) の設定を提供します。反対に、ASP.NET Core では、これを処理できるアプリ ミドルウェアを作成することもできます。
わかりました。SSLはサーバーによって処理されます。これは、プロトコル層の下にあり、アプリが HTTP(S) でのみ動作するためです。
サーバーにはどのような責任がありますか? アプリにはどのような責任がありますか?