Visual StudioでASP.NET Core Web アプリのプロジェクトをWindowsの[インターネット インフォメーション サービス(IIS)]で実行したい場合の手順を備忘録的に投稿します。
ASP.NET Coreモジュールのセットアップ
ASP.NET Core WebアプリをIISでホスティングするためには[ASP.NET Core Module]が必要です。
利用する環境に[ASP.NET Core Module]がセットアップされているか確認します。
1.[インターネット インフォメーション サービス(IIS)マネージャー]を表示して、[Default Web Site]を選択します。
2. 表示された[Default Web Site ホーム]画面の一覧で[モジュール]をダブルクリックします。
3.[モジュール]画面の一覧で[AspNetCoreModule(V2)]を確認します。
ASP.NET Coreモジュールのインストール
IISのモジュール画面で[AspNetCoreModule]の表示が無い場合には、インストールを行う必要があります。
プロジェクトのプロパティで[アプリケーション|ターゲット フレームワーク]で[ASP.NET Core]のバージョンを確認します。
設定しているバージョンに応じた[IIS の ASP.NET Core モジュール (ANCM)]をダウンロードします。
この記事を書いている時点で最新(9.0.6)のインストーラーはこちらからダウンロードが可能です。
ダウンロードした[ASP.NET Core Module]のインストーラーでセットアップを行います。
1.[ライセンス条項および使用条件に同意する]を有効(チェックを付ける)にして、[インストール]をクリックします。
2.[ユーザー アカウント制御]画面が表示された場合には[はい]を選択します。
3. 表示された[インストールが正常に完了しました]画面で[閉じる]をクリックします。
IISの[モジュール]画面に[AspNetCoreModule]が表示されればセットアップが完了です。
プロジェクトの発行
IISで利用するファイルをプロジェクトの[発行]で出力します。
デバッグ用にビルドした実行ファイルを使っても動きますが、IISでホスティングを実行中はデバッグ作業が出来なくなるので別ファイルとして発行しておいた方が無難です。
1.[プロジェクト]を右クリックして表示された[発行]メニューを選択します。
2. 表示された[公開]画面の[フォルダー]を選択します。
3. フォルダーの場所を確認して[完了]をクリックします。
4. 表示された[公開]画面の[発行]をクリックします。
アプリケーションプールの作成
IISでアプリケーションを実行するための[アプリケーションプール]を作成します。
具体的には次の手順で行います。
1.[インターネット インフォメーション サービス(IIS)マネージャー]の[アプリケーション]を右クリックして表示されたポップアップメニューから[アプリケーション プールの追加]を選択します。
2. 表示された[アプリケーション プールの追加]画面で、後で判別可能な名前を追加し[.Net CLR バージョン]は[マネージド コードなし]を選択して[OK]をクリックします。
ウェブサイトの作成
追加した[アプリケーション プール]と発行したファイルを使って[ASP.NET Core Webアプリ]が動作するウェブサイトを作成します。
具体的には次の手順で行います。
1.[インターネット インフォメーション サービス(IIS)マネージャー]の[サイト]を右クリックして表示されたポップアップメニューから[Web サイトの追加]を選択します。
2. 表示された[Web サイトの追加]画面に後で判別するための[サイト名]を入力し[物理パス]にはVisual Studioの[発行]で出力したフォルダーを入力します。
既にウェブサイトが作成されてる場合には[バインド]部分の[ポート]を編集します。
3.[アプリケーション プール]右側の[選択]をクリックします。
4. 表示された[アプリケーション プールの選択]画面で[アプリケーション プール]に表示された一覧から、作成したアプリケーションプールを選択して[OK]をクリックします。
4.[インターネット インフォメーション サービス(IIS)マネージャー]に新しいウェブサイトが追加されます。
ウェブブラウザーを表示して追加したウェブサイトのURLに入力して、アプリの実行画面が表示されるか確認します。
まとめ
Visual StudioでASP.NET Core Web アプリのプロジェクトをWindowsの[インターネット インフォメーション サービス(IIS)]で実行したい場合の手順について書きました。
ASP.NET Core Web アプリをIIS(インターネット インフォメーション サービス)で実行するためには[IIS の ASP.NET Core モジュール (ANCM)]が必須です。
[IIS の ASP.NET Core モジュール (ANCM)]は[インターネット インフォメーション サービス(IIS)マネージャー]の[モジュール]画面で確認できます。
セットアップされていない場合には、アプリで設定しているバージョンに対応した[IIS の ASP.NET Core モジュール (ANCM)]をインストールします。
インストール後は、Visual Studioで発行したフォルダーをウェブサイトとして設定するとアプリケーションがIISで動作します。
ASP.NET Core WebアプリをIISにデプロイしたい人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。