【apache】 NameVirtualHost

apacheでバーチャルドメインを使う場合

NameVirtualHost *:80

と宣言してから

# AAA.xxx
<VirtualHost *:80>
 ServerName AAA.xxx
 DocumentRoot "/var/www/AAA.xxx"
 ErrorLog logs/virtual-AAA-error_log
 CustomLog logs/virtual-AAA-access_log combined env=!no_log
</VirtualHost>

とすればいい。

NameVirtualHost *:80は無くても動くときは動くけどね。

※さっきまでコメントになってた(大笑
マルチドメインなら続けて

# BBB.xxx
<VirtualHost *:80>
 ServerName BBB.xxx
 DocumentRoot "/var/www/BBB.xxx"
 ErrorLog logs/virtual-BBB-error_log
 CustomLog logs/virtual-BBB-access_log combined env=!no_log
</VirtualHost>

な調子で追加すればいい。
このブログは<VirtualHost>の部分をファイルにしてconf.dに配置しているが
NameVirtualHost *:80
Include   conf.d/VirtualHost/*.conf
と順に読むように指定した方がいいかもしれない。
SSLの場合は普通ポートが443なので

NameVirtualHost *:443

と宣言してから

# AAA.xxx
 <VirtualHost *:443>
 ServerName AAA.xxx
 DocumentRoot "/var/www/AAA.xxx"
 SSLEngine on
 SSLCertificateFile      /どこかの/SSLサーバ証明書のファイル
 SSLCertificateKeyFile   /どこかの/SSLサーバ証明書とペアになる秘密鍵のファイル
 ErrorLog logs/virtual-AAA-error_log
 CustomLog logs/virtual-AAA-access_log combined env=!no_log
</VirtualHost>

とすればなんとなるらしい。
でも、普通はどこかのCAに署名してもらった電子証明書を使うので・・・

SSLCertificateChainFile  /どこかの/中間証明書のファイル

が必要な気もするが、ブラウザの中にすでに入っている様な気もする。
とりあえず、
以前は<VirtualHost>の外側、つまり証明書を1つしか配置できなかったので便利になった。
でも、

NameVirtualHost を2つ(80,443)を配置したらどうなるんだろう?

動くのかな?
そろそろ、ここもSSL化した方がいいのかもしれない。
と思って調べてみたわけ。
でも、DDNSのドメインを使ってるから無理だよね。
まずは、ドメインから・・・
かな?




コメントを残す

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

CAPTCHA