WordPressサブディレクトリ運用時のトラブルと解決方法

執筆者:

カテゴリ:

投稿日:

更新日:

-ChatGTPの助けを借りて-


自宅サーバー立ち上げで立ち上げたはずのサーバーがうまく動作しない。具体的には、WordPressインストールディレクトリを公開URLに表示させないようにしたところ、ディレクトリは公開されない設定には成功した。しかし、wordpressの標準でついてるブロックエディタ(Gutenberg)で編集した投稿内容が保存ができない。保存ボタンを押すと保存中のまま進行しない。

という状況に陥ってしまいました。いくらやっても解決しないので、困ったときのChatGTPだのみです。ChatGPT(GPT-5.5)に調査を依頼し、一緒に原因を一つずつ切り分けていくことにしました。

数時間にわたり、WordPress・Apache2の設定について順番に確認した結果、原因は、幾つかの設定ミスであったことが判りました。

同じ症状で困っている方の参考になればと思い、ChatGTPと一緒に解決した方法をまとめました。

構成

  • OS:Ubuntu 24
  • Webサーバー:Apache2
  • WordPress本体:/var/www/html/****
  • 公開URL:https://kagaku.info
  • WordPressアドレス:https://kagaku.info/****
  • サイトアドレス:https://kagaku.info

発生した問題

WordPressのインストールディレクトリを公開URLに表示しない設定後、次の現象が発生しました。

  • ブロックエディタ(Gutenberg)で保存すると「保存中」のまま終了しない
  • https://kagaku.info/wp-json/Not Found
  • パーマリンクを「基本」以外に設定すると記事が Not Found になる

原因

  1. Apacheの mod_rewrite が無効だったため、WordPressのリライトルールが機能していなかった。
  2. 000-default.confwordpress.conf の2つのVirtualHostが同時に有効になっており、DocumentRoot が競合していた。
  3. 000-default.confAllowOverride All の設定がなく、.htaccess のリライトルールが適用されていなかった。

解決方法

1. mod_rewrite を有効化

sudo a2enmod rewrite
sudo systemctl restart apache2

2. 000-default.conf を修正

DocumentRoot/var/www/html とし、次の設定を追加。

<Directory /var/www/html>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

3. wordpress.conf を無効化

sudo a2dissite wordpress.conf
sudo systemctl reload apache2

これにより、VirtualHostの競合を解消されました。

動作確認

以下を確認し、すべて正常に動作しました。

  • /wp-json/ がJSONを返す
  • パーマリンクが正常に表示される
  • ブロックエディタで保存できる
  • サイトが https://kagaku.info で正常に表示される

現在の構成

  • 有効なVirtualHost:000-default.conf のみ
  • DocumentRoot/var/www/html
  • WordPress本体:/var/www/html/****
  • ルートの index.php から wordpress/wp-blog-header.php を読み込む構成

今回のトラブルは複数の要因が重なっていましたが、ChatGTPの力を借りて、一つずつ切り分けて原因を特定できたため、根本的な解決に至りました。今後同様の構成を構築する際にも役立つ手順になると思います。

2026年7月
 12345
6789101112
13141516171819
20212223242526
2728293031  

コメント

“WordPressサブディレクトリ運用時のトラブルと解決方法” への1件のフィードバック

  1. […] で、実はここで問題が発生しました。ChatGTPの力を借りて、解決しました。解決方法は、WordPressサブディレクトリ運用時のトラブルと解決方法を参考にしてください。 […]

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です