ASP.NET 5 アプリケーションを IIS Webサーバーに配置する - ASP.NET

ASP.NET 5 アプリケーションを IIS Webサーバーに配置する手順を紹介します。

事前準備:ASP.NET 5 アプリケーション

ASP.NET 5のアプリケーションを作成します。今回はシンプルなRazor Pagesのアプリケーションを作成します。

コード

下記のコード、Razor Pagesを追加します。
startup.cs
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace SimpleRazorPagesApp
{
  public class Startup
  {
    public void ConfigureServices(IServiceCollection services)
    {
      services.AddRazorPages();
    }

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
      if (env.IsDevelopment()) {
        app.UseDeveloperExceptionPage();
      }
      app.UseRouting();
      app.UseEndpoints(endpoints =>
      {
        endpoints.MapRazorPages();
      });
    }
  }
}
\Pages\Index.cshtml
@page
@model SimpleRazorPagesApp.Pages.IndexModel
@{
  string str = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
}
<html>
<head>
</head>
<body>
  <div>はじめての ASP.NET 5 RazorPages アプリ</div>
  <div>@str</div>
</body>
</html>


解説

Razor Pagesアプリケーションでページに「はじめての ASP.NET 5 RazorPages アプリ」のテキストを表示し、 現在の日時を表示するWebアプリケーションを作成します。

事前準備:サーバー

IISのインストール

IISのWebサーバーを準備します。IISのインストールはこちらの記事を参照してください。

ASP.NET Core 5 Windows Hosting Bundleのインストール

IISをインストールしたWebサーバーに ASP.NET Core 5 Windows Hosting Bundleをインストールします。 インストールの手順はこちらの記事を参照してください。

アプリケーションの発行

作成したASP.NETアプリケーションを発行します。ソリューションエクスプローラーでWebアプリケーションのプロジェクトの ノードをクリックして選択します。右クリックしてポップアップメニューを表示します。メニューの[発行]ボタンをクリックします。


[公開]ダイアログが表示されます。


[ターゲット]を選択します。今回は[フォルダー]を選択します。選択後[次へ]ボタンをクリックします。


発行先のフォルダを設定します。今回はデフォルトのままとします。ASP.NET 5 のアプリケーションのため bin\Release\net5.0\publish\ がデフォルトの発行先となります。
[完了]ボタンをクリックして設定を確定します。


Visual Studioに戻るとアプリケーションの発行画面が表示されます。画面右側の[発行]ボタンをクリックします。


アプリケーションが出力先のフォルダに発行されます。


アプリケーションがフォルダに発行できました。

アプリケーションの配置

アプリケーションファイルのサーバー配置

発行したアプリケーションをIISのサーバーに配置します。
サーバーのフォルダに発行されたファイル一式を配置します。

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

[インターネット インフォメーション サービス(IIS)マネージャー]を開きます。 ウィンドウが表示されますので、左側のツリービューで[サーバー]のノードの子ノードの[アプリケーション プール]のノードをクリックして選択します。下図の画面が表示されます。ASP.NET 5アプリケーション用のアプリケーション プールを追加します。 ウィンドウ右側の[操作]エリアの[アプリケーション プールの追加...]のリンクをクリックします。


[アプリケーション プールの追加]のダイアログが表示されます。 [名前]の欄に識別用の名称を入力します。今回は "ASP.NET 5"としました。[.Net CLRバージョン]は"マネージドコードなし"を選択します。[マネージド パイプライン モード]はデフォルトの[統合]とします。
設定ができたらダイアログの[OK]ボタンをクリックします。


アプリケーションプールに追加できました。

アプリケーションの設定

[インターネット インフォメーション サービス(IIS)マネージャー]の左側のツリービューで、先ほどASP.NETアプリケーションを 配置したファルダをクリックして選択します。選択状態で右クリックします。下図のポップアップメニューが表示されます。 メニューの[アプリケーションへの変換]の項目をクリックします。


[アプリケーションの追加]ダイアログが表示されます。[アプリケーション プール]のボックスの右側の[選択]ボタンをクリックします。


[アプリケーション プールの選択]のダイアログが表示されます。コンボボックスをクリックして設定したい アプリケーションプールを選択します。先ほど作成した "ASP.NET 5" のアプリケーションプールを選択します。


"ASP.NET 5"のアプリケーションプールを選択しました。[OK]ボタンをクリックしてダイアログを閉じます。


[アプリケーションの追加]ダイアログに戻りますので、[OK]ボタンをクリックしてアプリケーションを追加します。


アプリケーションに変換できました。左側のツリービューのアプリケーションを配置したノードのアイコンが フォルダのアイコンから、地球のアイコン(Webアプリケーションのアイコン)に変化します。
アプリケーションの設定が完了しました。

実行結果

WebブラウザでIISのサーバーに配置したURLにアクセスします。アプリケーションが実行され、 「はじめての ASP.NET 5 RazorPages アプリ」と現在の日時が表示されたページが表示できます。


ASP.NET 5 アプリケーションをIISのサーバーに配置してアプリケーションを実行できました。
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
ASP.NET Core アプリのIIS配置
掲載日: 2021-01-05
iPentec all rights reserverd.