asp.net coreアプリをWindows Serverの標準HTTPDである、IIS(Internet Information Server)へ公開する手順を調べて、実際に公開してみた。(Visual Studioではなく、手動)
まず、IISが動作するサーバに Windows Hosting Bundleをインストールする必要がある。dotnet core 3.1の場合は、このページのWindows Hoting Bundleをダウンロードし、インストール。
次に、asp.net core用のアプリケーションプールを作成。
「マネージコードなし」に指定するのを忘れずに。
後は、IISがアクセス可能なディレクトリを作成して、そこに、
dotnet publish <プロジェクト名> --configuration Release
で作成したファイル(bin\Release\<フレームワーク>\publish\*.*)をコピー。
そのディレクトリをIISのアプリケーションとして登録。
この時、先程作成した、アプリケーションプールを指定する。
これで、公開は完了。
ただし、一度アプリが動作すると、一部ファイルがオープンされっぱなしになるようで、再度コピーしようとすると、netcoreが使用中とのメッセージが出力される事があるが、runtime dllなので無視しても大丈夫だと思うけど、心配ならば、一度アプリケーションプールを再起動してからコピーすれば良い。