ペコネット

ページの先頭へ
ページの先頭へ
ホーム > サーバー構築 > ローカル仮想マシンで各種構築 > マルチドメイン化(VirtualHost)1

マルチドメイン化(VirtualHost)1

ApacheのVirtualHostの機能を使い、マルチドメイン化して複数のサイトを運用できるようにします。

最初に…

WordPressサイトの作成でサイトを1つ作成しましたが、これはApacheのデフォルトのドキュメントルート(/var/www/html/)にインストールしました。

このサイトにローカル内で有効なドメインをつけて、ドキュメントルートは「/var/www/ドメイン/」に変更します。

さらにサイトの追加する場合は「/var/www/ドメイン2/」「/var/www/ドメイン3/」・・と構成していきます。

※ ここではドキュメンルートのディレクトリ名とドメイン名を完全に一致させています。(任意)

WordPressサイトの変更

マルチドメイン化(Virtual Host)1

画像の拡大

はじめに作成したWordPressサイトの管理画面にログインして「一般設定」の「WordPressアドレス」「サイトアドレス」を見ると「http://192.168.3.10」になっています。

マルチドメイン化(Virtual Host)2

画像の拡大

このアドレスを、後に設定する「http://wordpress.localsite」に変更します。サイトのタイトルも「ローカルワードプレス」に変更しておきました。

マルチドメイン化(Virtual Host)3

画像の拡大

「変更を保存」をクリックします。

マルチドメイン化(Virtual Host)4

画像の拡大

当然ですが、名前解決が出来なくなり(IPアドレスがわからない)サイトへの接続が途絶えました。いったんブラウザを閉じます。

マルチドメイン化(VirtualHost)の設定

マルチドメイン化(Virtual Host)5

画像の拡大

サイトが稼働していたサーバーUbuntu-Vへログインします。

$ sudo mv /var/www/html /var/www/wordpress.localsite

ドキュメントルートの名前を「/var/www/wordpress.localsite」に変更します。

マルチドメイン化(Virtual Host)6

画像の拡大

$ cat /etc/apache2/sites-available/000-default.conf

マルチドメイン(VirtualHost)の設定は「/etc/apache2/sites-available/」に置かれるファイルに記述され、有効化されると読み込まれます。デフォルトでは「000-default.conf」が有効になっています。(さらにファイルの中身を見ると「#」が外された赤枠の部分の機能が有効になっています)

$ sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/wordpress.localsite.conf

この「000-default.conf」をサイトを作成するごとにコピーします。任意の名前に変更して編集します。(ここではドメインと同じにしています wordpress.localsite.conf )

※ ドメイン、ドキュメントルート、設定ファイルの名前を揃えています。

  • ドメイン : wordpress.localsite
  • ドキュメントルート : wordpress.localsite
  • 設定ファイル : wordpress.localsite.conf
  • マルチドメイン化(Virtual Host)7

    画像の拡大

    $ sudo vim /etc/apache2/sites-available/wordpress.localsite.conf

    名前を変更してコピーしたファイル「wordpress.localsite.conf」をエディタで開き設定を記述します。

    マルチドメイン化(Virtual Host)8

    画像の拡大

    9行目の「#ServerName www.example.com」という項目(ディレクティブ)の「#」を削除して有効化。ドメインを設定します。「DocumentRoot」も変更したものに書き換えてファイルを保存して閉じます。

  • ServerName Wordpress.localsite
  • DocumentRoot /var/www/wordpress.localsite
  • 作成した設定ファイル「Wordpress.localsite.conf」の有効化

    $ sudo a2ensite wordpress.localsite.conf

    デフォルトの設定ファイル「000-default.conf」の無効化

    $ sudo a2dissite 000-default.conf

    ドキュメントルートの所有ユーザーの変更

    $ sudo chown -R www-data:www-data /var/www/wordpress.localsite

    ※ 「www-data」はApacheがデフォルトでサーバーの操作に使用するユーザー/グループ名です。

    ドキュメントルートのパーミッション変更

    $ sudo chmod 775 /var/www/wordpress.localsite

    ユーザー「peco」をwww-dataグループに追加

    $ sudo usermod -aG www-data peco

    Apacheの再起動

    $ sudo systemctl restart apache2

    アクセス元(WindowsPC)の設定

    アクセス元のローカルマシン(ここではWindowsPC)のhostsファイルに「wordpress.localsite」のIPアドレスを記述して名前解決が出来るようにします。

    IPアドレスは以前に設定した「192.168.3.10」になります。

    マルチドメイン化(Virtual Host)9

    画像の拡大

    「C:\Windows\System32\drivers\etc\hosts」ファイルを編集します。

    192.168.3.10 wordpress.localsite の記述を追加します。

    ブラウザでの確認

    マルチドメイン化(Virtual Host)10

    画像の拡大

    ブラウザのアドレスバーに「http://wordpress.localsite」と入力してアクセスするとWordPressサイトのトップページが確認出来ます。