SSL 経由で接続するとページが表示されない

この記事は、SSL 経由で接続するときにページを表示できない問題を解決するのに役立ちます。

元の製品バージョン:インターネット インフォメーション サービス
元の KB 番号: 260096

現象

Secure Socket Layer (SSL) を使用してインターネット インフォメーション サービス (IIS) を実行しているコンピューターに接続すると、次のエラー メッセージが表示されることがあります。

ページを表示できません。
探しているページは現在使用できません。 Web サイトで技術的な問題が発生している場合や、ブラウザーの設定を調整する必要がある場合があります。

この Web サイトは、通常、サーバー上の 2 番目の Web サイトです。 HTTP 経由で Web サイトに接続すると正常に動作します。

原因

このエラー メッセージは、既定の Web サイトに SSL が設定されていて、証明書を削除してから、2 つ目の Web サイトで設定しようとした場合に発生する可能性があります。

コマンドを netstat -an 実行すると、サービスがポート 443 でリッスンしているのに接続できないことがわかります。 これは、IIS バージョン 5.0 以降でソケット プールと呼ばれる新しい実装が原因で発生します。

解決方法

注:

この記事では、既定の Web サイトと管理 Web サイトという 2 つの Web サイトがインストールされています。 既定では、SSL は既定の Web サイトで有効になっています。

  1. 既定の Security Web サイトのプロパティを開き、[ サーバー証明書] を選択します。
  2. ウィザードで、[既存の 証明書の割り当て] をクリックし、一覧から証明書を選択します。
  3. ウィザードが完了したら、[ Web サイト ] タブをクリックし、[ 詳細設定] をクリックします。
  4. [SSL] ウィンドウに一覧表示されているすべてのエントリを削除します。
  5. もう一度 [サーバー証明書 ] をクリックし、[現在の証明書の削除] をクリックし、[OK] をクリック します
  6. Microsoft 管理コンソール (MMC) でコンピューター名を右クリックし、[ IIS の再起動] をクリックします。

これで、SSL を使用してサーバーに接続できるようになります。

回避策

IIS サービスを再起動すると、エラー メッセージが解決される場合があります。 そうでない場合は、この記事の「解決策」セクションの手順に従ってください。

詳細

IIS Web サーバーで SSL が有効になった後、IIS サービスは、ポート 80 と 443 で使用されているすべての IP アドレスと未使用の IP アドレスをリッスンし始めます。 マルチ IP アドレス サーバーの場合は、この機能を無効にすることもできます。 この機能は、パフォーマンス向上のために製品を追加しました。

この問題は通常、管理 Web サイトで SSL を設定しようとしたときに発生します。 IIS は、既定の Web サイトの SSL 設定を検索し、ポート 443 でリッスンします。 ただし、既定の Web サイトには、そのサイトに対応する証明書がありません。 そのため、接続できないので、ポート 443 でリッスンしているサーバーが表示されますが、サイトに接続できません。

この動作を再現する手順

  1. 既定の Web サイトと管理 Web サイトを持つコンピューターで、証明書を作成し、既定の Web サイトに設定します。 SSL ポートは 443 のままにします。
  2. 既定の Web サイトのプロパティの [ セキュリティ ] タブをクリックし、[サーバー証明書] をクリックします。
  3. [現在の証明書の削除] をクリックし、[OK] をクリック します
  4. 管理 Web サイトで [サーバー証明書] をクリックし、証明書の割り当てを選択し、一覧から証明書を選択します。
  5. ポートが 443 であることを確認します。
  6. SSL (https://localmachine) を使用して管理 Web サイトに接続してみてください。 SSL がポート 443 でリッスンしているため、サイトのポート番号は必要ありません。
  7. ページを表示できませんエラーが ブラウザーで発生します。