IISにASP.NETアプリをデプロイする基本手順を完全ガイド!初心者でもわかる公開方法
生徒
「ASP.NETで作ったアプリを、インターネットで見られるようにしたいんですが、どうすればいいですか?」
先生
「Windowsを使っているなら、IISという仕組みを使うのが一番わかりやすいですよ。」
生徒
「IISって聞いたことはありますけど、何をするものなんですか?」
先生
「簡単に言うと、Webサイトを外に公開するための“玄関係”のような存在です。順番に見ていきましょう。」
1. IISとは何か?ASP.NETとの関係
IIS(Internet Information Services)は、Windowsに標準で用意されているWebサーバーです。Webサーバーとは、ブラウザからの「このページを見せて」というお願いに応えて、HTMLや画像を返す役割を持つソフトです。
ASP.NETは、動きのあるWebアプリを作るための仕組みで、IISの上で動くことを前提に設計されています。たとえるなら、ASP.NETが「料理」、IISが「レストランの厨房」で、厨房があるから料理をお客さんに出せる、という関係です。
そのため、Windows環境でASP.NETアプリを公開する場合、IISへのデプロイは基本中の基本になります。
2. デプロイとは何をする作業なのか
デプロイとは、作ったプログラムを実際に使える場所へ配置する作業のことです。パソコンの中で動かしていたASP.NETアプリを、IISに登録し、誰でもアクセスできる状態にします。
初心者の方は「アップロード」と同じイメージで問題ありません。ただし、ASP.NETの場合は、ただファイルを置くだけでなく、IISに「このフォルダはWebサイトですよ」と教える設定も必要になります。
この設定を正しく行うことで、ブラウザからURLを入力したときに、ASP.NETアプリが動き出します。
3. IISのインストールと有効化
まずはIISを使える状態にします。Windowsでは、IISは最初から入っているものの、無効になっていることが多いです。
「Windowsの機能の有効化または無効化」を開き、「インターネット インフォメーション サービス」にチェックを入れます。これは、使わない機能は眠らせておく、というWindowsの考え方によるものです。
IISを有効にすると、パソコンがWebサーバーとして振る舞えるようになります。ブラウザで http://localhost と入力して、IISの初期画面が表示されれば準備完了です。
4. Visual StudioでASP.NETアプリを発行する
ASP.NETアプリは、Visual Studioから発行という操作を行って、IIS用のファイルを作成します。発行とは、実行に必要なものだけをまとめる作業です。
開発中のプロジェクトには、テスト用の設定や不要なファイルも含まれています。それらを整理して、IISで動かすための形にするのが発行です。
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
app.MapGet("/", () => "IISでASP.NETが動いています");
app.Run();
このようなシンプルなASP.NET Coreアプリでも、発行することでIIS上で動作させることができます。
5. IISでWebサイトとして登録する
次に、IISマネージャーを使って、発行したフォルダをWebサイトとして登録します。IISマネージャーは、Webサイトを管理するための画面です。
「サイトの追加」を選び、物理パスに発行フォルダを指定します。これは「このフォルダをWebサイトとして扱います」とIISに伝える操作です。
ポート番号もここで指定します。ポートは、同じパソコン内で複数のWebサイトを区別するための番号で、初心者のうちはそのまま80や5000などを使えば問題ありません。
6. web.configの役割を知ろう
IISでASP.NETを動かす際に重要なのが、web.configという設定ファイルです。これは、IISに対して「このアプリはこう動かしてください」と指示する設計図のようなものです。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" />
</handlers>
</system.webServer>
</configuration>
このファイルがあることで、IISはASP.NET Coreアプリを正しく起動できます。Visual Studioで発行した場合は、自動的に作られるので、最初は中身を理解しなくても大丈夫です。
7. よくあるエラーと考え方
IISデプロイで多い失敗は、「画面が表示されない」「エラー500が出る」といったものです。これは、IISがアプリを起動できていないサインです。
初心者の方は、エラーを「失敗」と考えがちですが、実際は「ヒントが表示されている状態」です。イベントビューアーやIISのログを見ることで、どこで止まっているかが分かります。
まずは「IISが動いているか」「発行フォルダを正しく指定しているか」を落ち着いて確認することが大切です。
8. IISデプロイを理解するメリット
IISへのデプロイを理解すると、ASP.NETアプリがどのように外部へ公開されているのかが見えてきます。これは、将来AzureやDockerを使う場合にも必ず役立つ考え方です。
Webアプリは、作ることと同じくらい「動かすこと」が重要です。IISはその第一歩として、とても良い学習材料になります。
最初は難しく感じますが、一度公開できると「自分の作ったものが世界に出た」という実感を得られるでしょう。