概要
IPベースでVirtual Hostの設定がしてあるサーバーに、新たにVirtual Hostの設定をすることになったが、もうIPは新たに振れない諸事情から名前ベースでの設定を行うことになったので、そのためにいじる場所のメモ。
前提
example.comとexample.netというドメインを持っていて、
.comを名前ベース、.netをIPベースのVirtualHostとしたい。
サーバー環境
サーバーは以下の環境で実行。
OS | WebServer |
---|---|
CentOS release 6.8 (Final) | Apache/2.2.15 |
設定
まずhttpd.confのNameVirtualHostの記述をコメントアウトする。これが大事。
/etc/httpd/conf/httpd.conf
NameVirtualHost *
↓ ↓ ↓
#NameVirtualHost *
次にIPベースのVirtualHost設定のconfファイルを以下の様にする。
/etc/httpd/conf.d/ip_vh.conf
<VirtualHost *:80>
ServerName example.net
↓ ↓ ↓
NameVirtualHost 192.168.0.2:80
<VirtualHost 192.168.0.2:80>
ServerName example.net
そして名前ベースのVirtualHost設定は以下の様にする。
/etc/httpd/conf.d/name_vh.conf
NameVirtualHost 192.168.0.1:80
<VirtualHost *:80>
ServerName example.com
↓ ↓ ↓
#NameVirtualHost 192.168.0.1:80
NameVirtualHost *:80
<VirtualHost *:80>
ServerName example.com
後はApacheを再起動。
# service httpd restart
こんな感じで両者がうまいこと共存共栄してくれました。