1つのドメインで2つのWordPressサイトを動かす

この記事では、オンプレミスLinuxサーバ上の一つのドメインで2つのWordPressサイトを動かすための手順を記述します。なお、1つのWordPressが既に稼働していることを前提としていますので、Apache、PHPやMySQLなどのインストールや設定方法については省略しています。

レンタルサーバでWordPressを運用している場合は、これから説明する手順では対応できません。各レンタルサーバ会社のマニュアルサイトを確認してください。

今回の環境条件

  • CentOS Linux release 7.8.2003
  • PHP 7.3.19
  • mysql Ver 14.14
  • Apache/2.4.6
  • wordpress-5.5.1

wordpress.orgによると、複数のWordPressサイトのインストールは3つの方法があると記載されています。

  1. マルチサイト(Multisite)
  2. シングルデータベース(Single Database)
  3. マルチプルデータベース(Multipule Database)

今回は、完全に独立した2つのWordPressサイトを作成するため、マルチプルデータベースで環境構築します。

WordPressのダウンロードとインストール

WordPressの最新版をwordpress.orgからダウンロードします。ダウンロードができたら、アーカイブをサーバにアップロードして展開します。

アーカイブを展開すると「wordpress」という名前のディレクトリの中に展開されます。既に「wordpress」という名前のディレクトリに運用中のWordPressサイトがあるため、同じ階層でアーカイブを展開したら運用中のサイトが壊れてしまいますので絶対にやらないでください。

/tmpなどで一度展開してディレクトリをリネームしてから配置しましょう。
以下は、DocumentRootが/var/www/htmlの場合の例です。

cd /tmp
tar -zxvf wordpress-5.4.2-ja.tar.gz
mv wordpress www
mv www /var/www/html
cd /var/www/html
chown -R apache:apache www

これから構築するWordPressサイトのイメージは以下の通りです。

構築イメージ図

MySQLに新しいデータベースを作成する

新しく構築するWordPressサイトが使用するデータベースを作成します。データベースにログインして、新しく構築するWordPressサイト用のデータベースを作成します。

#データベースにログインする
mysql -u root -p

#新しいデータベースを作成する(名前は任意で設定可能)
mysql> create database www_wordpress;

既に稼働中のWordPressサイトが使用するデータベースがグローバルユーザで設定されている場合は、新しいWordPressサイトで同じユーザを使っても問題はありません。データベースごとにユーザを設定している場合は、新しいデータベースのユーザを作成します。

#新しいデータベースのユーザとパスワードを設定
mysql> create user admin-www_wp@localhost identified by 'password';

#作成したユーザを新しいWordPress用のユーザに設定
grant all on www_wordpress.* to admin-www_wp@localhost;

#設定を反映
flush privileges;

#データベースの接続を閉じる
quit

WordPressをインストールする

Apacheのhttpd.confに設定されているのユーザやグループによっては、wp-config.phpが作成できない場合があります。新しいWordPressをインストールする前に、ディレクトリのパーミッションを以下のように一時的に変更したら回避できます。インストールが終わったら元に戻すのを忘れないでください。

「さあ、始めましょう」ボタンをクリックしてWordPressの基本設定を行います。

上記の画面が表示されたならば、先ほど設定したデータベースの情報を「データベース名」「ユーザー名」「パスワード」に設定してください。

「データベースのホスト名」は変更しません。また、今回のWordPressは、「マルチプルデータベース」で環境構築するため、テーブル接頭語についても変更の必要はありません。シングルデータベースで構築する場合は、テーブル接頭語を変更して、他のWordPressのテーブルと分別できるようにします。

設定が完了したら、「送信」ボタンを押してください。

上記の画面が表示されたならば、「インストール実行」ボタンを押してください。

上記の画面が表示されたならば、以下を設定します。

  • サイトのタイトル → 新しいWordPressサイトのタイトル(後で変更可)
  • ユーザー名 → 新しいWordPress管理用ダッシュボードのユーザー名
  • パスワード → 新しいWordPress管理用ダッシュボードのログインパスワード
  • メールアドレス → 新しいWordPressで使用するメールアドレス

「検索エンジンでの表示」については、チェックボックスにチェックしません。

設定が終わったら「WordPressをインストール」ボタンを押してインストールを続行します。

上記の画面が表示されたならば、新しいWordPressサイトのインストールは成功です。

最後にディレクトリのパーミッションを変更して完了しましょう。

#新しいWordPressのディレクトリの一つ上に移動する
cd /var/www/html

#新しいWordPressのディレクトリのパーミッションを元に戻す
chmod 755 ./www

結構簡単にできましたね。さらに3つ目以降のWordPressサイトを追加する場合の手順も同じです。

自前サーバの性能と相談しながらWordPressのマルチサイト化に挑戦してみてください。

ホームページやWordPressに関するお問い合わについて

本サイトの掲載内容に関するお問い合わせは、こちらから承ります。
どんな内容でも構いませんので、気兼ねなくご相談ください。
システムエンジニアリングの経験を持つスタッフが、ボランティアでご相談に応じさせていただきます。