人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

CentOS5.7 共有SSL バーチャルドメインへの設定が出来ずに困ってます。
複数のVサイトを立ち上げていて、カート決済の為に、共有のSSLの設定をしておりますが、
httpd.conf ssl.conf virtualhost.confの書き方についてお教えください。
※現在はmod_sslで通常のドメイン表示は出来ていて、httpd://にすると別なルートフォルダーを見るようになってしまっています。
基本ルート /var/www/html VドメインA /home/A/public_html VドメインB /home/B/public_html
基本的に伺いたいのは、それぞれのドメインへ、同じポートの443を利用して、共有SSLが使えるかどうか? 他のレンタルサーバのVPSでこの設定ができていたので、可能だと思っています。

httpd.confで、NameVirtualHost *:443 Include conf.d/*.confで外部ファイルをインクルード。
ssl.conf で、<VirtualHost 1.1.1.1(IP):443> 抜粋 localhost.crt等は読めていますエラー無し
→ 添付画像にします。

各ドメインの virtualhost.conf には下記を記入しています。
<VirtualHost *:443>
DocumentRoot /home/A/public_html
ServerName A
ServerAlias www.A
Options FollowSymLinks ExecCGI
</VirtualHost>
それぞれSSLEngine onを記入するのか?等、基本的に分かっていませんが、
お教えいただけると助かります。 Apache2.0

1318211278
●拡大する

●質問者: ベキ
●カテゴリ:コンピュータ ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● JULY
ベストアンサー

コメント欄の Becky_moni さんで答が半分出ているようなものですが、Apache httpd 2.0 では、一つの IP アドレスで複数のドメインを扱う、「名前ベースのバーチャルホスト」では、SSL/TLS は使えません。


その理由は、まず、SSL/TLS の接続直後の処理で、サーバの証明書がやりとりされますが、サーバの証明書が「証明しているもの」は、Web サーバの場合 FQDN、つまり、サイトのホスト名になります。


ところが、名前ベースのバーチャルホストでは、接続した時点では、クライアントがどのバーチャルホストにつなごうとしたのかが分からないため、どの証明書をクライアントに渡すべきか、判断出来きません。SSL/TLS の通信を成立させるための処理が、HTTP プロトコル中で指定される「このホストにつなぐ」という情報の前に行われるために、このような事が発生します。


で、これを解決するために、SNI と呼ばれる SSL/TLS の拡張機能が作られましたが、Apache httpd でこの SNI に対応したのは、2.2.12 以降になります。


Apacheの設定を変更し、単一IPアドレス上で複数のSSLサイトを運用する - builder


なので、CentOS 5.7 に付いてくる Apache httpd では対応していないはずです。


あと、SNI 自体はサーバ、ブラウザの共に対応している必要がありますが、古いブラウザや、携帯電話の場合に対応していない可能性があります。ですので、SNI 対応の Web サーバに入れ替えても、ブラウザによってはダメな場合がある、という認識が必要です。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ