前回の記事では、 IIS5 の HTTP 500 内部サーバー エラーの解決策について説明しました。IIS サーバー エラーの原因は複雑です。サービスの起動の失敗、IIS プロセスの中断、サイトの起動の失敗などのエラーは、システム ログにエラー イベントを記録します。 IIS でどのような種類のエラーが発生したとしても、トラブルシューティング計画を決定する前に、まずイベント ビューアを使用して、システム ログに記録されている関連イベントを確認する必要があります。
明らかにサーバー ハードウェアの損傷によって引き起こされるエラーもありますが、ソフトウェアの問題によって引き起こされる他のエラーは、多くの場合、検出が容易ではありません。このセクションでは、一般的な IIS のトラブルシューティングについてガイド付きで紹介します。
IISを再起動します
Microsoft 製品の一般的なトラブルシューティング方法およびトラブルシューティング方法によれば、ほとんどのソフトウェアの問題は、その方法に従って再起動することで解決できます。 IIS5.0 の新機能の 1 つとして、コンピューターを再起動せずに IIS サービスを再起動できるようになり、かなり深刻な問題もこの方法で解決できます。 IIS サービスを再起動すると、システムが IIS プロセスのメモリ領域を強制的にリセットするため、メモリ エラーによって引き起こされる問題を解決できます。 IIS を再起動する方法は、主に次のような状況で使用されます。Web サイト アプリケーションが麻痺しており、効果的に制御できない。Web サイト アプリケーションが正常に動作していない、または不安定である。 [/TD] [/TR][/TABLE] IIS サービスの再起動プロセス中は、現在の接続をすべて保持できず、再起動中にサーバー上のすべてのサイトが動作できなくなります。 IIS サービスを再起動しても問題が解決しない場合は、サーバーを再起動しても効果はありません。
サイト アプリケーションが正しく動作しない場合は、次の手順に従ってサーバーの IIS サービスを再起動します。
1. IIS 管理コントロール ツリーで IIS ノードを展開し、IIS サービスを再起動する必要があるコンピュータを選択します。
2. [操作]メニューをクリックし、[IISの再起動]を選択します。
3. [停止/起動/再起動]ダイアログボックスで、[IISの動作]ドロップダウンリストから[サーバー上のIISを再起動する]を選択し、[OK]をクリックします。
4. [閉じる]ダイアログボックスに、IISの再起動の進行状況が表示されます。ダイアログボックスが長時間応答しない場合は、[今すぐ終了]をクリックして、上記の操作を再度実行してください。
注: 上記の再起動操作は、HTML ベースの IIS マネージャー (リモート管理モード) を使用して実行することはできません。
単一サイトの安定性の問題については、IIS プロセス全体を再起動する必要はなく、サイトを再起動するだけで済みます。
IISのトラブルシューティング
IISのバックアップ/復元
世界で確実なサーバー セキュリティ プランがあるとすれば、それはバックアップです。誰かがかつて指摘しました: 優れたシステム管理者が行う 3 つの最も重要なタスクは、バックアップ、バックアップ、バックアップです。
IIS の実装メカニズムには、レジストリに似たメタデータ データベース MetaBase が含まれています。IIS 自体とサイトに関連するすべての構成プロパティは、Windows 2000 とメタデータ データベース MetaBase に保存されます。したがって、関連するレジストリとメタデータ データベースがバックアップされている限り、サイト関連のすべての構成を保存できます。サイトを削除した後、または IIS を再インストールした後でも、バックアップを使用して元の状態に復元できます。
IIS をバックアップする手順は次のとおりです。
1. IIS マネージャーで IIS ノードを展開し、バックアップするコンピューターを選択します。
2. [アクション]メニューをクリックし、[構成のバックアップ/復元]を選択します。
3. [構成のバックアップ/復元]ダイアログボックスの[バックアップ]リストに、すべてのバックアップファイルとバックアップ時刻が一覧表示されます。 [バックアップの作成]ボタンをクリックします。
4. [バックアップ構成]ダイアログボックスで、新しいバックアップの名前を指定し、[OK]をクリックします。
5. [閉じる]をクリックしてバックアップを完了します。
デフォルトでは、バックアップ ファイルは Winntsystem32inetsrvMetaBack ディレクトリに保存されます。
バックアップの復元方法も同様です。[バックアップ/復元設定]ダイアログボックスの[バックアップ]リストでバックアップファイルを選択し、[復元]をクリックします。次に、左側に示すプロンプト ダイアログ ボックスで [OK] をクリックします。一定時間が経過すると、IIS サーバーはバックアップ実行時の状態に復元されます。
IIS の再インストール後にサーバーでバックアップを復元する必要がある場合は、上記の回復操作に基づいて追加の操作を実行する必要があります。手順は次のとおりです。
1.コマンド プロンプトで、「cscript.exe X:InetPubAmdinScriptsAdsutil.vbs enumw3svc」と入力します。「X」は、IIS がインストールされているドライブ文字です。リストされた設定から、WamUserName と関連する WAMUserPass の値を探します。
2.コントロールパネルの[管理ツール]をダブルクリックし、[コンピュータの管理]をダブルクリックします。
3. [ローカル ユーザー マネージャー]を選択し、[ユーザー]をクリックします。 [IWAM_computername] ユーザー アカウントをダブルクリックします。前の手順で見つかった WAMUserPass 値を入力し、[OK] をクリックします。
4. [バックアップ名の構成]ダイアログボックスで、作成したバックアップファイルを選択し、[復元]をクリックします。この時点で、構成は完全に復元されます。
[カットページ]
TCP/IPのトラブルシューティング
TCP/IP プロトコルの問題は、多くの場合、IIS が適切に動作しない原因になります。 IIS でエラーが発生しても、IIS サービス自体には問題がないと判断できる場合は、ネットワーク ハードウェアの損傷による問題を単純に解消した上で、ネットワーク接続に問題があるかどうかを検討する必要があります。協定では、ネットワーク プロトコル、主に TCP/IP に焦点を当てる必要があります。
Windows 2000 には一連の TCP/IP トラブルシューティング ツールが用意されており、これらのツールは主にコマンド プロンプト ラインに基づいており、ネットワークの問題を診断する強力な手段となります。
ipconfig ツールを使用して TCP/IP 構成を確認する
ipconfig は、クライアントの TCP/IP 構成ステータスを表示および管理するためのコマンド プロンプト ツールです。コマンド プロンプトで「ipconfig」と入力し、Enter キーを押すと、右に示すように、IP アドレス、サブネット マスク、デフォルト ゲートウェイなどのコンピュータの基本的な TCP/IP 構成プロパティが取得されます。
コマンド プロンプトで「ipconfig /all」と入力し、Enter キーを押すと、基本情報に加えて、ホスト名、DNS 設定、WINS 設定、DHCP 設定、物理アドレス、ノード タイプも含まれる TCP/IP 構成ステータスが表示されます。 、などの TCP/IP 情報。
コンピューターで DHCP が有効になっており、DHCP サーバーを使用して構成を取得している場合は、ipconfig /renew コマンドを使用してリースの更新を開始できます。 /release オプションを指定して ipconfig コマンドを使用すると、ホストの現在の DHCP 構成をすぐに解放することもできます。
Windows 95 および Windows 98 クライアントの場合は、ipconfig コマンドの代わりに winipcfg コマンドを使用する必要があります。
ping コマンドを使用して接続をテストする
Ping コマンドは、IP レベルの接続を確認するのに役立ちます。問題を発見して解決する場合、Ping を使用してターゲットのホスト名または IP アドレスに ICMP エコー リクエストを送信できます。 ping は、ホストが TCP/IP ネットワークおよびネットワーク リソースに接続できることを確認する必要がある場合に使用されます。
Ping コマンドは実際に複数 (デフォルトは 4 個) のデータ パケットをターゲット ホストに送信します。ローカル コンピューターとターゲット ホストが接続できる場合、ターゲット ホストは、右上の図に示すように応答メッセージを返します。メッセージには応答時間と TTL 値が含まれます。同じホストへの ping が成功した場合は、ローカル ホストとターゲット ホストの間で IP データを転送できることを示します。
次の図に示すように、タイムアウト メッセージが受信された場合は、ネットワーク障害、プロトコル エラー、TCP/IP 構成エラーなどが考えられます。ネットワーク接続を確認する前に テストする場合は、次の順序で Ping テストを実行する必要があります。
1.ローカル ループ アドレス 127.0.0.1 に ping を実行して、ローカル TCP/IP 構成が正しいかどうかを確認します。
コマンド プロンプトで「Ping 127.0.0.1」と入力します。
2.ローカル マシン アドレスに ping を実行して、ローカル IP アドレスの設定が正しいかどうかを確認します。
3.デフォルト ゲートウェイ アドレスに ping を実行して、ローカル サブネット外のホストと通信できるかどうかを確認します。
4.リモート サブネット上のホストに ping を実行して、ルーター経由でリモート通信が可能かどうかを確認します。
上記の Ping コマンドに応答できる場合は、TCP/IP 構成がネットワーク通信をサポートできることを意味します。それ以外の場合は、対応するネットワーク コンポーネントに対して設定チェックが実行されます。
netstat ツールを使用して接続統計を表示する
netstat コマンドを使用すると、プロトコル統計と現在の TCP/IP 接続を表示できます。
netstat -a コマンドはすべての接続を表示し、netstat -r はルーティング テーブルとアクティブな接続を表示します。 netstat -e コマンドはイーサネット統計を表示し、netstat -s はプロトコルごとの統計を表示します。
netstat -n を使用する場合、アドレスとポート番号を名前に変換することはできません。
[カットページ]
400 このリクエストを解析できません。
401.1 無許可: 資格情報が無効なため、アクセスが拒否されました。
401.2 Unauthorized: サーバーが代替の認証方法を優先するように構成されているため、アクセスは拒否されます。
401.3 Unauthorized: 要求されたリソースの ACL 設定によりアクセスが拒否されました。
401.4 Unauthorized: Web サーバーにインストールされているフィルターの認証に失敗しました。
401.5 Unauthorized: ISAPI/CGI アプリケーションの認証に失敗しました。
401.7 Unauthorized: Web サーバーの URL 認証ポリシーによりアクセスが拒否されました。
403 Forbidden: アクセスが拒否されました。
403.1 禁止: 実行アクセスが拒否されます。
403.2 禁止: 読み取りアクセスが拒否されました。
403.3 禁止: 書き込みアクセスが拒否されました。
403.4 禁止: このリソースを表示するには SSL が必要です。
403.5 禁止: このリソースを表示するには SSL 128 が必要です。
403.6 禁止: クライアントの IP アドレスは拒否されます。
403.7 禁止: SSL クライアント証明書が必要です。
403.8 禁止: クライアントの DNS 名は拒否されます。
403.9 禁止: Web サーバーに接続しようとしたクライアントが多すぎます。
403.10 禁止: Web サーバーは実行アクセスを拒否するように構成されています。
403.11 禁止: パスワードが変更されました。
403.12 禁止: クライアント証明書へのアクセスがサーバー証明書マッパーによって拒否されました。
403.13 禁止: クライアント証明書が Web サーバー上で取り消されました。
403.14 禁止: Web サーバー上でディレクトリのリストが拒否されました。
403.15 禁止: Web サーバーがクライアント アクセス ライセンスの制限を超えています。
403.16 禁止: クライアント証明書の形式が不正であるか、Web サーバーによって信頼されていません。
403.17 アクセス禁止: クライアント証明書の有効期限が切れているか、まだ有効ではありません。
403.18 禁止: 要求された URL は現在のアプリケーション プールでは実行できません。
403.19 禁止: このアプリケーション プール内のクライアントに対して CGI を実行できません。
403.20 禁止: パスポートのログインに失敗しました。
404 ファイルまたはディレクトリが見つかりません。
404.1 ファイルまたはディレクトリが見つかりません: 要求されたポートで Web サイトにアクセスできません。
404.1 エラーは、複数の IP アドレスを持つコンピュータでのみ発生することに注意してください。クライアント要求が特定の IP アドレスとポートの組み合わせで受信され、その IP アドレスがその特定のポートでリッスンするように構成されていない場合、IIS は 404.1 HTTP エラーを返します。たとえば、コンピュータに 2 つの IP アドレスがあり、そのうちの 1 つの IP アドレスだけがポート 80 でリッスンするように構成されている場合、もう一方の IP アドレスがポート 80 から受信した要求によって、IIS は 404.1 エラーを返します。このエラーは、サーバー上で複数の IP アドレスが使用されている場合にのみクライアントに返されるため、このサービス レベルでのみ設定する必要があります。
[カットページ]TCP/IPのトラブルシューティング
TCP/IP プロトコルの問題は、多くの場合、IIS が適切に動作しない原因になります。 IIS でエラーが発生しても、IIS サービス自体には問題がないと判断できる場合は、ネットワーク ハードウェアの損傷による問題を単純に解消した上で、ネットワーク接続に問題があるかどうかを検討する必要があります。協定では、ネットワーク プロトコル、主に TCP/IP に焦点を当てる必要があります。
Windows 2000 には一連の TCP/IP トラブルシューティング ツールが用意されており、これらのツールは主にコマンド プロンプト ラインに基づいており、ネットワークの問題を診断する強力な手段となります。
ipconfig ツールを使用して TCP/IP 構成を確認する
ipconfig は、クライアントの TCP/IP 構成ステータスを表示および管理するためのコマンド プロンプト ツールです。コマンド プロンプトで「ipconfig」と入力し、Enter キーを押すと、右に示すように、IP アドレス、サブネット マスク、デフォルト ゲートウェイなどのコンピュータの基本的な TCP/IP 構成プロパティが取得されます。
コマンド プロンプトで「ipconfig /all」と入力し、Enter キーを押すと、基本情報に加えて、ホスト名、DNS 設定、WINS 設定、DHCP 設定、物理アドレス、ノード タイプも含まれる TCP/IP 構成ステータスが表示されます。 、などの TCP/IP 情報。
コンピューターで DHCP が有効になっており、DHCP サーバーを使用して構成を取得している場合は、ipconfig /renew コマンドを使用してリースの更新を開始できます。 /release オプションを指定して ipconfig コマンドを使用すると、ホストの現在の DHCP 構成をすぐに解放することもできます。
Windows 95 および Windows 98 クライアントの場合は、ipconfig コマンドの代わりに winipcfg コマンドを使用する必要があります。
ping コマンドを使用して接続をテストする
Ping コマンドは、IP レベルの接続を確認するのに役立ちます。問題を発見して解決する場合、Ping を使用してターゲットのホスト名または IP アドレスに ICMP エコー リクエストを送信できます。 ping は、ホストが TCP/IP ネットワークおよびネットワーク リソースに接続できることを確認する必要がある場合に使用されます。
Ping コマンドは実際に複数 (デフォルトは 4 個) のデータ パケットをターゲット ホストに送信します。ローカル コンピューターとターゲット ホストが接続できる場合、ターゲット ホストは、右上の図に示すように応答メッセージを返します。メッセージには応答時間と TTL 値が含まれます。同じホストへの ping が成功した場合は、ローカル ホストとターゲット ホストの間で IP データを転送できることを示します。
次の図に示すように、タイムアウト メッセージが受信された場合は、ネットワーク障害、プロトコル エラー、TCP/IP 構成エラーなどが考えられます。ネットワーク接続を確認する前に テストする場合は、次の順序で Ping テストを実行する必要があります。
1.ローカル ループ アドレス 127.0.0.1 に ping を実行して、ローカル TCP/IP 構成が正しいかどうかを確認します。
コマンド プロンプトで「Ping 127.0.0.1」と入力します。
2.ローカル マシン アドレスに ping を実行して、ローカル IP アドレスの設定が正しいかどうかを確認します。
3.デフォルト ゲートウェイ アドレスに ping を実行して、ローカル サブネット外のホストと通信できるかどうかを確認します。
4.リモート サブネット上のホストに ping を実行して、ルーター経由でリモート通信が可能かどうかを確認します。
上記の Ping コマンドに応答できる場合は、TCP/IP 構成がネットワーク通信をサポートできることを意味します。それ以外の場合は、対応するネットワーク コンポーネントに対して設定チェックが実行されます。
netstat ツールを使用して接続統計を表示する
netstat コマンドを使用すると、プロトコル統計と現在の TCP/IP 接続を表示できます。
netstat -a コマンドはすべての接続を表示し、netstat -r はルーティング テーブルとアクティブな接続を表示します。 netstat -e コマンドはイーサネット統計を表示し、netstat -s はプロトコルごとの統計を表示します。
netstat -n を使用する場合、アドレスとポート番号を名前に変換することはできません。