LoginSignup
3
6

More than 3 years have passed since last update.

ASP.NET Core MVCのWebアプリをIIS 10.0に公開する

Last updated at Posted at 2021-02-23

バージョン

IIS 10.0
ASP.NET Core 3.1
Windows 10

.NET Core ランタイムインストール

.NET Core 3.1のランタイムはここからダウンロード
.NET Core 5.0のランタイムはここからダウンロード

ダウンロードページに用意されているランタイムは3種類あります

  • ASP.NET Core Runtime(Webシステムなどのアプリを実行するための物)
  • .NET Desktop Runtime(Windows デスクトップアプリを実行するための物、.NET Runtimeを含まれている)
  • .NET Runtime(コンソールアプリを実行するための物)

必要に応じてダウンロードすればいい、今回はWindows + IISで稼働するのでASP.NET Core Runtimeの「Hosting Bundle」をインストールする、「Hosting Bundle」の中には .NET Runtime と IISサポートを含まれている

ASP.NET Core のプロジェクトでは既定としてKestrelを使用している、IISはリバース プロキシサーバーとしてASP.NET Coreアプリの中のKestrelと連携する 詳細はこちらから

Kestrel Web サーバーに関してはクリックで確認

ASP.NET Core 3.1のアプリは5.0のランタイムでも問題なく動けるみたい、でもクリーンな環境で実際に検証していないので動作しなかったら3.1のランタイムをインストールしてください。
自分のローカル環境で問題なく動いているので多分大丈夫、ローカル環境に関しては下図のように
ローカル環境図

「Hosting Bundle」のインストールが出来たら、IISを起動して確認してください。
IISのモジュールの中に「AspNetCoreModuleV2」が入っていれば無事インストール完了

IISへの発行

アプリケーション プールの作成

アプリケーションプールの追加

図のように.Net CLRバージョンには「マネージドコードなし」にする必要がある。

Webサイト作成

image.png

Webサイトに関する設定

作成されたWebサイトの構成エディターの「system.webServer/aspNetCore」
stdoutLogEnabledとstdoutLogFileの二つには発行したサイトが立ち上がらない際のエラー調査には役に立ちますので、必要な際は「True」に変更すれば、エラーが発生した場合Webサイトの配置先の直下のlogフォルダーにログが出力されます。
image.png

Webサイトの発行

ここではVisual Studioの発行を利用してWebサイトを発行する、発行したファイルをIISでの設定先にコピーして配置する
image.png
image.png

※注意事項
  ASP.NETみたいにただビルドしたファイルを配置しても動かないです、Coreでは必ず発行したファイルを配置すること

まとめ

  • IISがインストールされていなければ、IISをインストール
  • ASP.NET Core Runtimeの「Hosting Bundle」をインストール
  • IISに「マネージドコードなし」のアプリケーションプールを作成
  • IISに「マネージドコードなし」のアプリケーションプールを利用するWebサイトを作成
  • 発行したアプリファイルをIISの設定先に配置する

MicrosoftのIIS に ASP.NET Core アプリを発行するを参照

3
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
6