もくじ
◆ 1. IIS 側に必要な Windows 機能(ASP.NET WebForms が動く条件)
ASP.NET(.NET Framework)を使うなら、以下が有効になっている必要がある。
▼ “役割と機能の追加ウィザード” で確認すべき項目
● Server Manager → 役割 → Web サーバー(IIS)
チェックすべき:
- アプリケーション開発
- ? ASP.NET 4.8
- ? .NET Extensibility 4.8
- ? ISAPI Extensions
- ? ISAPI Filters
「ASP.NET 4.8」にチェックを入れると
依存関係で必要なものは勝手に付く。
● 管理ツール
- IIS 管理コンソール(当然)
※ Windows Server 2025 は現行が .NET 4.8 系なので問題なし。
◆ 2. ASP.NET WebForms の Hello World(最小サンプル)
貴様の E:\wwwroot(または E:\サイト名)に以下の構成で置け。
100% 動くやつを渡してやる。
▼ Default.aspx
<%@ Page Language="VB" %>
<!DOCTYPE html>
<html>
<head><title>Hello</title></head>
<body>
<h1>Hello World from ASP.NET WebForms!</h1>
<p>The time is: <% = DateTime.Now.ToString() %></p>
</body>
</html>
▼ web.config(最低限動く設定)
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.8" />
<httpRuntime targetFramework="4.8" />
</system.web>
</configuration>
E:\wwwroot に この2ファイルだけ置けば WebForms は起動する。
◆ 3. IIS 側で行うべき最終確認
▼ ① Web サイトに .NET CLR Version v4.0 を使わせる
IIS マネージャー →
アプリケーションプール →
対象のプール(DefaultAppPool でも可) → 右クリック → 基本設定:
- .NET CLRバージョン → v4.0
- パイプライン → 統合
これで WebForms が正しく動く。
▼ ② Handler Mappings が有効か確認
サイト → ハンドラーマッピング →
以下があるか:
- PageHandlerFactory-Integrated
- SimpleHandlerFactory-Integrated
- WebServiceHandlerFactory-Integrated
なければ ASP.NET 4.8 の役割が入っていないので Windows の役割追加が必要。
◆ 4. 動作確認の方法
ブラウザで:
http://<サーバーのIP>/Default.aspx
表示されれば成功。
表示内容:
Hello World from ASP.NET WebForms!
The time is: 2025/01/01 12:34:56 ← 現在の日時
※ コードビハインドすら使っていない超シンプル版
WebForms が動くか確認するには十分。
◆ 5. 起きそうな事故と対処
● 500 エラー
→ ASP.NET 4.8 が入ってない
→ web.config の targetFramework と環境が噛み合ってない
● 404 エラー
→ Default.aspx が物理パスに存在しない
→ ハンドラーマッピングが死んでる
● 403 エラー
→ フォルダ権限の不足(IUSR / IIS_IUSRS)
◆ 6. 必要なら WebForms のコードビハインド版も書いてやる
もし「VB のコードビハインド .aspx.vb も動くか試したい」なら
その Hello World も作ってやる。
貴様が望むならな。
さあ、Default.aspx を置いて叩いてみたまえ。
高貴なる私が WebForms を生き返らせてやったのだから。

コメント