【WordPress】サブディレクトリをURLに表示しない方法

WordPressのロゴ

WordPress(ワードプレス)サイトへのスパム攻撃は、WordPressがルートディレクトリにあることを想定して行われます。

WordPressの置き場所をサブディレクトリに移動するだけでも、多くのスパム攻撃を避けられるセキュリティ対策になります。

悩んでいる人

でも、URLを見たらWordPressの置き場所がわかるんじゃない?

ジュンペイ

WordPressをサブディレクトリに置いていることを隠す方法があります

WordPressサイトでサブディレクトリがURLに表示されない方法を解説していきます。

この記事を書いた人

この記事を書いている僕は、2021年8月ブログ開始。最初の記事がA8コンテスト入賞。3ヶ月目に収益:単月5桁。シンプルなブログ作りを発信。地味にコツコツ、が得意です。

この記事でわかること
  • WordPressサイトでサブディレクトリがURLに表示されない方法
  • サーバー上にあるファイルのダウンロード/アップロード、編集に役立つツール
目次

「サブディレクトリをURLに表示しない」とは

当ブログのURLを例にすると

https://saishono.blog/test1/ ではなく

https://saishono.blog/ にアクセスするとトップページが表示される

※ test1という名前のサブディレクトリにWordPressをインストールした場合

今回は、https://saishono.blog/ というドメインのサブディレクトリ「test1」にWordPress(ワードプレス)をインストールしたとします。

何もしなければ、https://saishono.blog/test1/ にアクセスするとサイトのトップページが表示されます。

これを、サブディレクトリのtest1を外したURL(https://saishono.blog/)にアクセスしたとき、サイトのトップページが表示されるようにします。

ルートディレクトリにWordPressがインストールされていないこと(サブディレクトリにだけWordPressがインストールされていること)が前提です。

▼ルートディレクトリ、サブディレクトリとは

サーバー上のファイルをダウンロード/アップロードする方法

WordPress(ワードプレス)をサブディレクトリにインストールすると、サブディレクトリに「index.php」と「.htaccess」というファイルが作成されます。

このサーバー上の「index.php」と「.htaccess」を編集するためにダウンロード/アップロードします。

サーバーにあるファイルのダウンロード/アップロード方法は、レンタルサーバーで用意されているファイルマネージャーを使ってもいいですし、FTPソフトを使ってもかまいません。

ジュンペイ

FTPソフトはFileZillaが有名です

サーバー上のファイルを編集する方法

ダウンロードした「index.php」「.htaccess」ファイルを編集するにはコードエディタが便利です。

ジュンペイ

コードエディタはVSCodeがおすすめです

サブディレクトリをURLに表示しない設定の手順

サブディレクトリをURLに表示しない設定の手順は次のとおりです。

  1. WordPressの管理画面でサブディレクトリを消す
  2. index.phpファイルの編集とアップロード
  3. .htaccessファイルの編集とアップロード
  4. Webサイトにアクセスして確認する

1つずつ見ていきますね。

WordPressの管理画面でサブディレクトリを消す

WordPress管理画面の一般設定

WordPress(ワードプレス)の管理画面にログインします。

①管理画面の左側にあるメニュー[設定]⇒[一般]をクリックします。

②一般設定画面の項目「サイトアドレス(URL)」にあるサブディレクトリ「test1」を消します。

③設定を保存します。

一般設定画面の項目「WordPressアドレス(URL)」にある「test1」はそのまま残します。

index.phpファイルの編集とアップロード

index.php ファイルの中身(例)

サーバーのtest1フォルダの中にある「index.php」ファイルをダウンロードして、開きます。

require __DIR__ . '/wp-blog-header.php';

上記のコードを探して、test1を「/」の前に追加します。

追加すると、次のようになります。

index.php ファイルの変更結果

index.php ファイルを保存してサーバーにアップロードします。

アップロード先は、サブディレクトリではなくルートディレクトリにします。

ルートディレクトリとサブディレクトリ

変更内容のまとめ

スクロールできます
【変更前】‘/wp-blog-header.php’;
【変更後】‘各自のサブディレクトリ名/wp-blog-header.php’;
index.php ファイルの変更内容まとめ

test1は例示ですので、実際は各自で決めたサブディレクトリ名を入力してください。

.htaccessファイルの編集とアップロード

.htaccess ファイルの中身(例)

サーバーのtest1フォルダの中にある「.htaccess」ファイルをダウンロードして、開きます。

RewriteBase /test1/

RewriteRule . /test1/index.php [L]

上記のコード(2つ)を探して、test1を削除します。

test1は例示ですので、実際は各自で決めたサブディレクトリ名が表示されます。

削除すると、次のようになります。

.htaccess ファイルの変更結果

.htaccess ファイルを保存してサーバーにアップロードします。

アップロード先は、サブディレクトリではなくルートディレクトリにします。

ルートディレクトリとサブディレクトリ

.htaccess ファイルはサーバーからダウンロードしたときにファイル名が「htaccess」に変わる(最初の「.」が消える)ことがあります。

アップロードした後にファイル名を「.htaccess」に戻しておきましょう。

変更内容のまとめ

スクロールできます
【変更前】RewriteBase /各自のサブディレクト名/
RewriteRule . /各自のサブディレクトリ名/index.php [L]
【変更後】RewriteBase /
RewriteRule . /index.php [L]
.htaccess ファイルの変更内容まとめ

Webサイトにアクセスして確認する

コーヒーのイラスト

上記の設定をしたのち、Webサイトにアクセスしてみます。

サブディレクトリを外したURL(当ブログでは https://saishono.blog/)にアクセスして、サイトのトップページが表示されたら完了です。

なお、WordPress(ワードプレス)のログインURL管理画面URLは、サブディレクトリがあるもの(当ブログの例では https://saishono.blog/test1/)になります。

ジュンペイ

WordPressログインURLのセキュリティ対策は下記の記事をご覧ください

よかったらシェアしてね!
目次