Apacheで複数ドメインを運用するための設定方法

Apacheで複数のドメインを運用するための設定方法です。

【環境】

  • Apache/2.2.15
  • CentOS 6.7

ドメイン用のフォルダ作成。
mkdir -p /var/www/example.com/public_html
権限を自分に変更。
chown -R uesr:user /var/www/example.com
新ドメイン用のhttpd設定を作成。(最後が「.conf」であれば名前はなんでもOK)
vi /etc/httpd/conf.d/example.com.conf

wwwありとwwwなしの両方に反応してほしいので2パターン記載。

 ServerName example.com
 DocumentRoot "/var/www/example.com/public_html/web/"
 DirectoryIndex index.html index.php
 ErrorLog /var/log/httpd/example.com_error_log
 CustomLog /var/log/httpd/example.com_access_log combined
 AddDefaultCharset UTF-8
 <Directory "/var/www/example.com/public_html">
  AllowOverride All
 


 ServerName www.example.com
 DocumentRoot "/var/www/example.com/public_html/web/"
 DirectoryIndex index.html index.php
 ErrorLog /var/log/httpd/example.com_error_log
 CustomLog /var/log/httpd/example.com_access_log combined
 AddDefaultCharset UTF-8
 <Directory "/var/www/example.com/public_html">
  AllowOverride All
 

httpdの設定を編集。
vi /etc/httpd/conf/httpd.conf

バーチャルホストの利用にするためにコメント外す。
NameVirtualHost *:80

Apacheを再起動する。
まずは念のためテスト。
service httpd configtest
問題なければ再起動。
service httpd restart

以上です。
ドメインの設定は別の問題なので、ここでは説明しません。

この手順でApacheを設定すれば、1つのサーバーで何個でもドメインを管理できるようになります。

※注意

元々運用していたルートドメインを使用したい場合は、同様に「/etc/httpd/conf.d/」配下に「.conf」ファイルを作って設定を記載すること!