来年から運営するイベントサイトをマルチサイトにした際の備忘録。
使用環境
- 使用サーバー:さくらインターネットスタンダードプラン
- マルチサイト(今回はサブディレクトリにて運用)
ハマったこと
通常通りwp-config.phpの、
define('WP_ALLOW_MULTISITE', true);
を追記して上書きアップロード。
一旦、ログアウトして、
WordPress管理画面から「ツール」→「ネットワークの設定」(新しく追加されている)を選択。
ネットワーク作成画面で「サブディレクトリ」を選択し、「インストール」をクリック。
表示された、wp-config.phpと.htaccessの修正内容をそれぞれに追記して、
一度ログアウト後ログイン。
詳しくはこのあたりを参考にしてください。
WordPressで複数のサイトを運用する(サブディレクトリ型)
WordPressのマルチサイト機能で複数のブログを管理する
(ここよりずっと詳しく書いています)
で、本サイトには無事ログインできたのですが、
追加したサブディレクトリの新規サイトのコントロールパネルにログインしようとすると、
リダイレクトループになる(´;ω;`)
で、
WordPressのマルチサイト(サブディレクトリ)でリダイレクトループが発生したときの注意点
ここのサイトを見つけて、
おっとそうだった。
さくらインターネットはドメイン設定で、
直接ディレクトリを指定できるんやったと思い、
書かれた通り、
WordPressインストール先のルート配下(/home/ユーザー名/www/exmple)の中の、
.htaccessに、
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
をコピーして上書きしたところ無常の
500 Internal Server Error(;´Д`)
なぜに?
で、またまたグーグル先生に教えを請うと、
このサイトを見つける。
サブディレクトリでマルチブログ(wordpress3.0)さくらインターネット
で、この中の.htaccessにコピーする部分がちょっと違ったので、
それをコピーしてみる。その内容がこれ。
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
をコピーしたら無事表示されました。
WordPressがネットワークの設置で、
.htaccessにコピーしろと書いているものと見比べてみると、
下から2,3行目のパス(wp/$2ではなく$2)が違っていました。
当たり前のことですが、
さくらインターネットはドメイン設定で直接ディレクトリに向けられるので、
WordPressをインストールしているフォルダにドメインを当てると、
インストールディレクトリ名は必要ありません。
わかれば当たり前のことですが、
焦るとわかんなくなっちゃいますね。
さくらインターネットを使う場合は気をつけようっと。