WordPress

【サイトを非公開化する方法】.htaccessでアクセス制限

悩んでいる人
悩んでいる人

クライアントからデータは残しつつホームページを閉じて欲しいと言われた。

対応方法を知りたい。

この対応方法をお教えします。

今回対応するのは、サイトの非公開化(サーバー上にデータは残すが、外部からアクセスできないようにする)です。

前提条件

  • サーバー:エックスサーバー
  • CMS:WordPress

サーバー設定でアクセス制限をかける

  1. エックスサーバーにアクセス
  2. .htaccess編集

BEGIN WordPress の上に記載する

# === ここから追加(サイトを非公開にする) ===
Order Deny,Allow
Deny from all
# === 追加ここまで ===

# BEGIN WordPress
・
・
# END WordPress

全アクセスをブロックする場合(サイト全体を完全非公開にする)

これを設定すると、全員が403 Forbiddenになり、サイトにアクセスできなくなります。

Order Deny,Allow
Deny from all

管理者のみアクセス許可(特定のIPアドレスを許可)

xxx.xxx.xxx.xxx の部分を、許可するIPアドレス(管理者のIPなど)に変更してください。

これを設定すると、許可されたIPアドレス以外のアクセスはすべて403エラーになります。

自分のIPアドレスの確認方法:エックスサーバーにログインし、サーバーパネルの「アクセス解析」から自分のIPアドレスを確認できます。

Order Deny,Allow
Deny from all
Allow from xxx.xxx.xxx.xxx

各行の意味

Order Deny,Allow
Deny from all

この .htaccess の設定は、Apache のアクセス制御を行うためのルールで、サイト全体を非公開(アクセス禁止) にする設定です。

この設定を .htaccess に追加すると、サイト全体が非公開 になり、どのページにアクセスしても 「403 Forbidden」 というエラーが表示されます。

検索エンジンのクローラー(Googlebotなど)もアクセスできなくなり、サイトが検索結果から削除される可能性があります。

1. Order Deny,Allow

これは 「Deny(拒否)を優先し、その後に Allow(許可)を適用する」 というルールを決める設定です。

  • Order Deny,Allow
    • Deny(アクセス拒否)を最初に適用する。
    • Allow(アクセス許可)をその後に適用する。

このルールの順番が重要で、最初に 全てを拒否し、後から特定の許可を設定できる 仕組みになります。

2. Deny from all

Deny from all「すべてのIPアドレスからのアクセスを禁止する」 という意味です。つまり、この設定を .htaccess に記述すると、どのIPアドレスからもサイトにアクセスできなくなる(403 Forbiddenエラーが表示される) ということになります。

  • この記事を書いた人

コウダイ

文系・ノースキル・未経験・アラサー・地方住み・残業100時間超えの社畜ホテルマンから都内IT系上場企業のフルリモートWebエンジニアに転職した人。

都内IT系上場企業に勤務するWebエンジニア5年目|プログラミングスクールのテックキャンプ公式アンバサダー|新卒で手取り18万の地方ホテルマン6年→挫折→プログラミングを900時間勉強→転職活動100社以上応募→アラサー未経験から7ヶ月でフルリモートのWebエンジニアに転職し年収150万円UP|34歳2児のパパ|ブログ歴4年→月間6,000PV|エンジニア転職ノウハウ、プログラミング、Web制作、副業での稼ぎ方など、「時間や場所に縛られずに稼ぐ」方法を発信しています。

-WordPress