Windows Server 2025 / IISを導入して最初のWebサイトを公開する

IISは必要なWebサーバー機能を追加するとHTMLを配信できます。物理パス、アプリケーションプール、バインド、読み取り権限を設定し、ローカルと別クライアントの両方から確認します。

独立したWebサーバーを準備する

Internet Information Services(IIS)はWindowsのWebサーバーです。この実習は静的HTML一枚で、DBやフレームワークは使いません。PHPやASP.NETは別途ランタイムと展開設定が必要です。

WEB1をドメインメンバーとして172.24.50.30/24、DNS .10にします。DC1やFS1へ役割を追加せず、IPの重複とホストの余力を確認します。LabSite、LabSitePool、C:\Sites\LabSite、HTTP 8080を使い、既定サイトの80と区別します。外部インターネットへ公開する実習ではありません。

必要なIIS機能だけを導入する

  1. WEB1の役割と機能の追加でWebサーバーIISと管理ツールを選びます。
  2. HTTP共通機能の静的コンテンツと既定のドキュメント、正常性と診断のHTTPログを確認します。
  3. 不要なアプリ実行環境を追加せず導入します。
  4. 結果と再起動要求を確認し、inetmgrを開きます。
Install-WindowsFeature Web-Server -IncludeManagementTools
Get-WindowsFeature Web-Static-Content,Web-Default-Doc,Web-Http-Logging,Web-Mgmt-Console

PowerShellは未導入時の代替です。既存IISでは状態を先に確認します。インストール成功だけではサイト権限や通信は整いません。

ページと専用プールを作る

同じフォルダーがあれば目的を確認して止まります。新規作成後、次をUTF-8のindex.htmlとして保存します。index.html.txtになっていないか拡張子も確認してください。

<!doctype html>
<html lang="ja">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>LabSite</title>
</head>
<body>
  <h1>LabSite</h1>
  <p>Windows Server 2025のIISが動作しています。</p>
</body>
</html>

IISのアプリケーションプールでLabSitePoolを「マネージドコードなし」で作り、詳細設定のIDをApplicationPoolIdentityにします。フォルダーのセキュリティで場所をWEB1にしてIIS AppPool\LabSitePoolへ読み取りと実行、一覧、読み取りを付与します。SYSTEMと管理者は保持します。

アプリケーションプールIDはプール専用の仮想アカウントです。公開担当の書き込みとWeb処理の読み取りを分け、Webプロセスへフルコントロールや管理者を与えません。

サイトと匿名IDを構成する

  1. サイトの追加でLabSite、LabSitePool、C:\Sites\LabSiteを指定します。
  2. http、172.24.50.30、8080、空のホスト名を設定します。
  3. LabSiteの認証から匿名認証を編集し、アプリケーションプールIDを選びます。
  4. 既定のドキュメントにindex.htmlがあり、パス、バインド、プールが正しいか確認します。
  5. サイトを開始し、WEB1でhttp://172.24.50.30:8080/index.htmlとルートを確認します。

既定のIUSRとプールIDは別です。匿名認証のID設定を明示して、付与したNTFS権限と一致させます。サイト作成の引数も確認できます。Everyoneの書き込みで認証エラーを回避しません。

CLIENT1から応答とログを確認する

WEB1がDomainプロファイルであることを確認し、Lab-IIS-HTTP-8080としてTCP 8080、接続元172.24.50.0/24の受信規則を作ります。想定外のプロファイルなら原因を調べます。

Test-NetConnection -ComputerName 172.24.50.30 -Port 8080
症状 確認先
タイムアウト 通信、規則、待ち受け
403.14 既定ドキュメント。ディレクトリ参照で回避しない
401.3 匿名IDとNTFS読み取り
404 実ファイル名、拡張子、パス
503 プール停止、急速な失敗保護、イベント

CLIENT1でも同じURLと本文を確認します。C:\inetpub\logs\LogFiles\W3SVC配下の正しいサイトIDと時刻を照合します。整理する場合はこのサイト、プール、8080規則、テストフォルダーだけを対象にします。