wordpress移動し、ワードプレスのマルチサイト機能を使用して作ったそれぞれのブログが表示されない不具合についてhtaccessに不正がある場合の対処方法をここでは解説いたします。
htaccessファイルの設定を見直す
ワードプレスでマルチサイトを構築したときに、htaccessファイルは一般的なパーマリンク設定に加えて、特殊な設定をする必要があります。
マルチサイトのhtaccessファイルの設定例
RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [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]
マルチサイトそれぞれからの管理画面からファイルをアップロード
マルチサイトそれぞれの管理画面からファイルをアップロードできるようにするには、下記の設定をhtaccessに追加します。
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
それぞれのマルチサイトの管理画面を表示する
それぞれのマルチサイトの管理画面が正しく表示されるようにするため下記の設定をhtaccessに追加します。
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
それぞれのマルチサイトのアップロードファイル(画像等)が正しく表示されるようにする
それぞれのマルチサイトにアップロードされたファイル(画像など)が正しく表示されるようにするには下記の設定をhtaccessに追加します。
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]