Apache のバーチャルホストが上手く機能しなかった話

こんな理由で上手く動作しない事があるのかって事で思い知った話。

内向け用のサーバーとして「wsgi.magic-object.com」を開設した。

以下はバーチャルホストの設定



ポートの「80番」と「443番」で、リバースプロキシで「http://localhost:8880/」に飛ばししているだけである。しかし、「80番」は正常に動作したのだが、「443番」は、何故か「https://www.magic-object.com」に飛ばされてしまう。

原因が分からずに悩んでいると、どうやら次の設定が動作しているらしい事が判明した。

はぁ? なぜ?

結論

実は DNS で「wsgi.magic-object.com」は「www.magic-object.com」の「CNAME」ですと宣言していた。「https」接続では証明書の関係から、当然、名前解決を行い証明書が有効なモノかどうかを判断する。

ここで、「wsgi.magic-object.com」は「www.magic-object.com」の「CNAME」なので、それじゃぁ「www.magic-object.com」アドレスって事だよね、とばかりに「wsgi.magic-object.com」を「www.magic-object.com」扱いにしていたのである。

「https」接続を行うバーチャルホストの場合には、DNS 関連の設定も関係してくるのである。

Facebooktwitterfoursquare

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です