ルートに本番、サブに別WPを入れたら不具合。原因はフォルダ名に「wp-admin」を含めたこと

先日、ルート直下に本番のWordPress、サブディレクトリに検証用のWordPressという構成でセットアップしたところ、以下の不具合に遭遇しました。

発生した症状

  • 固定ページや記事の投稿ができない
  • 投稿やページのURLが404になる
  • サブ環境にアクセスしたいのに、1回目はルート環境(本番)へ飛ばされる(サブに入れない)

最初は .htaccess を疑って設定をいろいろと見直しましたが、改善せず(=「htaccessを疑っていろいろとした」段階)。

サイト構成(個人情報なしの例)

問題が起きたときのディレクトリ構成はこんなイメージでした。

NG例(サブ環境のフォルダ名に「wp-admin」を含めていた)

/                ← ルート(本番のWordPress)
└─ wp-admin-test/  ← サブ環境(ここに別のWordPressをインストール)※NG

OK例(紛らわしくない名前に変更)

/                ← ルート(本番のWordPress)
└─ stage/          ← サブ環境(ここに別のWordPressをインストール)※OK

原因

サブ環境のインストール先フォルダ名に「wp-admin」を含めていたことが原因。
WordPressの管理画面ディレクトリ名と衝突・誤判定され、リダイレクトやルーティングが不安定になり、投稿不可や404が発生していました。

対処

サブ環境のフォルダ名を「wp-admin」を含まない名称(例: stage, dev, sandbox など)に変更。
これだけで上記の不具合は解消しました。

まとめ(教訓)

  • ルートWP+サブWPの構成自体は問題ない
  • ただし、インストール先フォルダ名に「wp-admin」を含めないこと
  • 迷ったら wp-admin / wp-content / wp-includes といったWordPressの予約/内部ディレクトリ名や、それに類する名称は避ける

チェックリスト(公開前に一度確認)

  • サブ環境のフォルダ名に「wp-admin」など紛らわしい文字列を含めていないか
  • サブ環境の WordPress アドレス(URL)/ サイトアドレス(URL)が正しく設定されているか
  • リダイレクト系プラグインや .htaccess の設定でサブ環境へのアクセスが阻害されていないか(設定を変えた場合はキャッシュもクリア)
Home
サービス
制作実績
デザイナー紹介
公式LINE
問合せ