ネームベースのバーチャルホストとSSLについて

ネームベースのバーチャルホストでHTTPSがうまく動かない理由をまとめてみました。

ある日、次のような調査依頼がありました。

現在、稼動しているアプリケーションを他社でも使用したい。環境は、今稼働中の環境に相乗りで、URLを使い分けて使用したい。設定が、可能かどうかを調査してほしい。

なにを調べたらよいのか分からず、内容を確認してみました。すると、知りたい事は、次のようなことでした。

HTTPSを使用しつつ、ネームベースのバーチャルホストの設定はできるか?

という質問でした。オラクルのAPサーバーが、Apacheであることを考えると、設定は、不可能です。正しくは、「SSLの仕組み上、IPアドレスや、ポートを分ければ、設定できるがネームベースの場合、うまく動作しない。」というところでしょうか。

ネームベースのバーチャルホストは、HTTPリクエストヘッダに含まれる「Host」を参照してアクセスするバーチャルホスト決定します。SSL接続の場合、HTTPリクエストヘッダは暗号化されており、参照することができません。

この場合は、デフォルのバーチャルホスト(設定ファイル順一番上のホスト)にアクセスするため、証明書のホストと一致しない場合があります。2番目以降のホスト名でアクセスした場合、常にセキュリティの警告が出ます。また、ネームベースのバーチャルホストに限らず、Apacheの ServerAliasディレクティブも使う意味がなくなります。

理由は、こんな感じでしょうか。

スポンサーリンク







シェアする

  • このエントリーをはてなブックマークに追加

フォローする