KUSANAGI でサブディレクトリに新規サイトを複数構築する手順
WordPress でマルチサイト(WordPressを複数構築)する方法はいくつかあります。
- WordPressの機能を使いサイトネットワークを構築
- メインのWordPress内のサブディレクトリに新しくWordPressをインストール
他にもサブドメインを利用すれば別サーバーでマルチサイトのように見せることもできますが、今回は同一サーバー内に限定します。
1番手軽なのは1. のサイトネットワークを構築することなのですが、プラグインがうまく動かなかったり、サーバーの移転をする時など管理に苦労しますのでおすすめはしません。
この記事では、KUSANAGI 環境下で、WordPress サイト以下にサブディレクトリ型のWordPressを新規インストールする手順を紹介します。
メインブログ
https://mainblog.com/
趣味特化ブログ
https://mainblog.com/hobby/
KUSANAGI をインストール
KUSANAGI が利用できるサーバーは ConoHa VPS、さくら VPS、AWSなどがありますが、ここでは ConoHa を利用した場合を想定しています。
まだ登録が済んでない場合はこちらから登録すると700円分のクーポンがもらえます。
\ 700円分のクーポン付き /
- 約1ヶ月無料で使おう
KUSANAGI のインストールは下記の記事で紹介しています。kusanagi manager を使えば初心者でもインストールできます。
KUSANAGI をサブディレクトリにコピー
SSH クライアントを利用してConoHa サーバーにアクセスしましょう。
$ cd /home/kusanagi/【KUSANAGIディレクトリ名】/
$ cp -rp DocumentRoot hobby
$ mv hobby DocumentRoot
その後、https://mainblog.com/hobby にアクセスしてみましょう。
WordPressの設定ファイル wp-config.php がないので新規インストール画面が表示されると思います。
ここで、まだデータベースを作成していないので作成します。
データベースを作成
コマンドを使ってMySQLのデータベースを作成します。
MySQLのrootパスワードは SSH接続時か、cat /etc/motd で確認できます。
$ mysql -u root -p
## root の MySQLパスワードを入力
CREATE DATABASE hobby;
SHOW DATABASES;
(データベースの作成を確認)
## ユーザーに権限を付与
GRANT ALL ON DB名. * TO ユーザー名@localhost IDENTIFIED BY 'パスワード' WITH GRANT OPTION;
exit;
WordPress を新規インストール
WordPressのインストールに戻ります。
作成したデータベース名と、DBのユーザー名、パスワードを入力しましょう。
あとは通常のWordPressインストール時と同じようにサイト名などを入力すればOKです。
サブディレクトリに対応するよう修正
この状態でパーマリンクを「投稿名(/%postname%/)」に設定すると、メインブログのURLを探してしまうので404エラーが発生してしまいます。
そのため、nginx の設定ファイルを編集しておく必要があります。
$ su
(root に切り替え)
# cd /etc/nginx/conf.d/
(メインブログの設定ファイルを編集)
# vim mainblog.com_ssl.conf
下記のコードを追加してください。場所は location / の直下あたりでOKです。
location /hobby {
try_files $uri $uri/ /hobby/index.php?$args;
}
ここでKUSANAGI の再起動をしておきます。
# kusanagi restart
パーマリンクを投稿名にして、Hello World! の記事にアクセスできれば完了です。おつかれさまでした。
\ 700円分のクーポン付き /
- 約1ヶ月無料で使おう
必要に応じてリダイレクト
xxx.com で運営していたブログを xxx.com/sub にしたい場合は 301リダイレクトをする必要があります。
CloudFlare を使うと簡単にできます。
「ページ > ページルール」
- https://xxx.com/*
- https://xxx.com/sub/$1