【ワードプレス】ルートディレクトリにイントールしたWPをサブディレクトリに移動させてみた!
投稿日:2021/1/18 更新:2021/5/4 コメント 0件 ワードプレス .htaccess, エックスサーバー, サブディレクトリ, ダッシュボード, ログイン, ワードプレス, 移動新規ドメインを取得してワードプレス(未公開サイト)をルートディレクトリ(ドメイン直下)にインストールしたんですが、レンタルサーバーの専用ファイル(user.ini)があったりしてのちのち管理が面倒になるかも知れないなぁ~と思ったので「wp」というサブディレクトリを作成して移動してみました。
ワードプレス本体の移動
まず、FTPソフト「FileZilla」でワードプレスを構成しているファイルをすべて選択して移動させたい新規ディレクトリ「wp」にドラッグ&ドロップで移動させます。エックスサーバーでは「user.ini(設定ファイル)」のほかに「index.html」と「default_page.png」というファイルがありましたがこちらは必要ないので先に削除しています。
.htaccess 編集
このままだとワードプレスのサイトアドレスが「xxx.com/wp/」とかになってしまうので「xxx.com/」となるように「.htaccess」を編集します。
やり方はルートディレクトリに「.htaccess」ファイルを作成して以下の文字列をコピーし、「sample.com」の部分をドメイン名、「my_subdir」のところをサブディレクトリ名の「wp」に変更するだけです。記載されている意味は下記URLが参考になると思います。
今さら人に聞けない!WordPressで使われているmod_rewriteの説明書
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/my_subdir/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /my_subdir/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ my_subdir/index.php [L]
</IfModule>
「.htaccess」の編集はエックスサーバーのファイルマネージャーで操作しました。余談ですがこちらファイルマネージャーでは「FileZilla」のようなファイルの移動はできません。 左の項目にドラッグ&ドロップするとできました。
サイトはブラウザのブックマークからすぐに開けたんですが、「my_subdir」の部分が3か所もあることに最初、気付かずに一つだけ修正したら以下のようなエラーが出てダッシュボード(管理画面)にログイン(「ドメイン/wp/wp-login.php」や「ドメイン/wp-login.php」)できませんでした。
ふたつ目を修正しても以下のようなエラーがでたりしたんですが、「my_subdir」の部分をすべて置き換えたらダッシュボードにログインできました。
Internal Server Error
The server encountered an internal error of misconfiguration and was unable to complete your request.
Please contact the server administrator at webmaster@ドメイン名 to inform them of the time this error occurred,
and the actions you performed just before this error.
More information about this error may be available in the server error log.
Additionally, a 500 Internal Server Error was encountered while trying to use an ErrorDocument to handle the request.
内部サーバーエラー サーバーで構成ミスの内部エラーが発生し、リクエストを完了できませんでした。
このエラーが発生した時刻とこのエラーの直前に実行したアクションを
サーバー管理者(webmaster @ドメイン名)に通知してください。
このエラーの詳細については、サーバーエラーログを参照してください。
さらに、ErrorDocumentを使用して要求を処理しようとしたときに、500内部サーバーエラーが発生しました。
慣れれば1分も掛からずにできるほど簡単な作業だったんですが、リアルに公開しているサイトだったらマジで焦っていたと思いますw。
月額900円(税抜)から、高速・多機能・高安定レンタルサーバー『エックスサーバー』
▼参考ページ
WordPress を専用ディレクトリに配置する(方法 I (URL の変更なし))