MENU

【エックスサーバー】WordPressにBasic認証パスワードをつける

この記事では、WordPressで作成したサイトにBasic認証をつけて、アクセス制限をかける方法を説明します。

この記事でわかること
  • Basic認証(ベーシック認証)って何?
  • Basic認証はどんなときに使える?
  • エックスサーバーでの簡単なBasic認証のかけかた
  • 一般的なBasic認証のかけかた
目次

Basic認証とは

Basic認証とはIDとパスワードを知っている人だけがサイトへのアクセスできるようにする仕組みのこと。

サイトにBasic認証をかけておくと、ページにアクセスしたときに、こんなポップアップ画面が出てきます。

Basic認証の例

このBasic認証は設定が簡単なので、アクセス制限をかけたいときによく使われます。
普通のホームページはもちろん、WordPressサイトにもパスワード設定することができます。

Basic認証の使い道
  • 公開前の作成中のサイトにパスワードをかける
  • 管理画面にパスワードをかける
  • 購入者様限定のダウンロードページや会員限定ページなど秘密のページにパスワードをかける

エックスサーバーでBasic認証をかけるには

Xサーバーにはアクセス制限用の機能が用意されています。


管理画面にログイン>サーバーパネルから「アクセス制限」をクリックしてください。

サイト全体に設定する場合

現在のフォルダのアクセス制限をONにして設定するボタンを押します。

現在の状態がONになります。

そして、現在のフォルダのところのユーザー設定をクリックします。

IDとパスワードを設定します。

管理画面に設定する場合

wp-adminのところのアクセス制限をONにして、「設定する」を押します。
現在の状態が「ON」に変わります。

wp-adminの行のユーザー設定をクリックします。

IDとパスワードを設定します。

一般的なBasic認証のかけ方

サーバー備え付けの機能を使わない場合のBasic認証のかけかたを説明していきます。

Basic認証を設定するには、「.htaccess」「.htpasswd」という2つの隠しファイルを使います。

.htaccessアクセスするためのIDとパスワードを記述したファイルです
.htpasswdBasic認証の設定とパスワードファイル(.htpasswd)の場所を記述したファイルです

① .htpasswdの設定

パスワードを作る

まずはIDとパスワードを決めましょう。

続いて、パスワードは暗号化して使うため、パスワード生成サイトにアクセスします。

今回は一番上のサイトを例に説明します。
お好みのIDとパスワードを入力します。

IDとパスの設定

.htpasswdを生成するボタンを押すと生成結果に暗号化されたコード(ここでは「test:kaHiZBdZtTr2Y」)が出てきます。

ユーザー名→test
パスワード→kaHiZBdZtTr2Y

htpasswdの生成

htpasswd.txtを作る

生成したコード(ここでは「test:kaHiZBdZtTr2Y」)をテキストファイルの本文にコピペします。

htpasswdの設定


このときファイル名は「htpasswd.txt」で保存します。

なお、IDとパスワードを複数設定することもできます。
その場合は、次の行に別のIDとPASSの組み合わせを記述します。

②.htpasswdをWebサーバーにアップロードする

Webサーバーにアクセスして、WordPressをインストールしたディレクトリを開きます。

サイト全体に認証をかける場合の配置場所

サイト全体に認証をかけたい場合は、 WordPressをインストールしたディレクトリの直下に.htpaswdファイルを置きます。

WordPressインストール場所

管理画面に認証をかける場合の配置場所

管理画面に認証をかけたい場合は「wp-admin」の直下に「htpasswd.txt」をアップロードします。

wp-adminの下

配置できたら、ファイル名変更(Rename)します。
「htpasswd.txt」から拡張子「.txt」を外して、最初に「.」を足して「.htpasswd」にします。

これでパスワードの設定は完了。

③.htaccessを作成する

.htaccessに記述する内容を準備します。
テキストエディタに「htaccess.text」という名前のファイルを作成します。

サイト全体に設定する場合

AuthUserFile /home/●●●/public_html/WordPressのインストールフォルダ/.htpasswd
AuthName “Please enter your ID and password”
AuthType Basic
require valid-user
記載内容の説明

AuthUserFile ホームディレクトリから.htpasswdの置き場所をフルパスで記述
AuthType 認証方式の設定「Basic」と記述
AuthName 認証時に表示される文章を記述
require valid-user(全てのユーザー)に対して設定

管理画面に設定する場合

<Files wp-login.php>
AuthUserFile /home/●●●/public_html/WordPressのインストールフォルダ/wp-admin/.htpasswd
AuthName "Please enter your ID and password"
AuthType Basic
AuthGroupFile /dev/null
require valid-user
</Files>

ホームディレクトリについて

設置するサーバーの環境によって、AuthUserFileで指定するパスが変わります。

MixhostだとCパネルにログインして右側の一般情報欄にホームディレクトリのURLがあります。ここを起点に「.htpasswd」のパスを記載します。

ホームディレクトリの情報

④ .htaccessをサーバーにアップロードする

サーバーを操作する前に、すでに「.htaccess」があればダウンロードして、バックアップにしておきましょう。(間違った操作をすると真っ白になって胃しまうので。)

.htaccessを置く場所は、WordPressをインストールしたディレクトリ配下です。

WordPressインストール場所

.htaccessファイルがない場合は新しく「.htaccess」を作成します。
テキストファイル「htaccess.txt」に上記コードを記述して、アップロードしてから、ファイル名を「.htaccess」に変更するとやりやすいです。

すでに.htaccessファイルがある場合は、さきほどのコードを追記します。

実際に、IDとパスが設定できているか確認してみてくださいね。

うまく動かないとき

うまく動かない時は、以下を間違えてる可能性があるので、チェックしてみてください。

  • ファイル名(.htaccess、.htpasswd)
  • .htaccessとhtpasswdファイルの置き場所
  • .htaccess内のAuthUserFileで記述したパス

いっつも忘れちゃうので、自分の備忘のためにも、まとめておきました?

以上、Basic認証のやり方でした。

  • URLをコピーしました!

この記事を書いた人

元エンジニア・コンサルタント→フリーランスへ。
個人事業主さん向けにWordPress・HP作成の個人レッスンをしています。

目次