「WordPressにベーシック認証を設定したい!」
このような経験はないでしょうか。サイト表示時にIDとパスワードを求められる「Basic認証」ですが、サイトを公開したくない場合や限られた人のみにアクセスを許可したい場合などに使えます。
しかしやり方がよくわからないという場合がほとんどです。今回はそのような「Basic認証」について、具体的な設定方法をご紹介していこうと思います。
Basic認証とは?
Basic認証とは、 Webサイトのページやファイルにアクセス制限をかけることができる認証方法の1つです。 設定することでアクセスを行う時に認証ダイアログが立ち上がりユーザ(ID)名やパスワードの入力が求められます。
具体的な特徴は以下の2つ。
ディレクトリ単位でのアクセス制限が可能
Basic認証の設定が行える範囲は基本的にディレクトリ単位のみです。認証を設定したディレクトリのどのURLにアクセスしようとしても、IDとパスワードを求めるダイアログが表示される仕組みになっています。
つまり個別のWebページだけでなく、画像などのファイルもBasic認証の範囲内となるのです。
「.htaccess」ファイル内に細かい設定をすることでディレクトリ全体だけではなく、特定のページや画像のみに対してBasic認証をかけることも可能です。「.htaccess」で手動で設定する方法については、後述します。
認証完了後はブラウザを閉じるまで有効
Basic認証で正しく認証されたら、 そのブラウザを閉じるまでは再認証なしで何度でもアクセスすることができます。そのため他のWebサイトを閲覧した後でも認証なしでアクセスすることができるため、再度認証する手間はかかりません。
これはブラウザの機能によるもので、 ブラウザの種類やバージョン、ネットワーク状況によってはログイン情報が保存されない場合があるため注意しましょう。
Basic認証を設定する3つの方法
- レンタルサーバーで設定
- WordPressのプラグインで設定
- htaccessを作成して設定
Basic認証を設定するためには、上記の3つの方法があります。
基本的にどの方法で設定してもいいのですが、設定の手軽さや手間は異なります。また初心者にとって設定のしやすさも変わるため、自身にあった方法でBasic認証設定を行なっていきましょう。
結論から、初心者にとっても設定しやすいのはレンタルサーバーで設定する方法です。その理由はこれから詳しく解説しますね。ひとつ一つ確認していきましょう。
レンタルサーバーで設定する方法
WordPressは一般的に、レンタルサーバーを契約して運営をします。このレンタルサーバーにもさまざまな種類があり、料金プランや表示速度などが異なります。
レンタルサーバーで設定する特徴
レンタルサーバーでの設定は、初心者にとってもおすすめだと述べましたが、その理由は設定が簡単だからです。
具体的にはレンタルサーバーの設定内で簡単に設定することができて、 プラグイン導入などによるデメリットがないという特徴があります。
しかし1つ注意点として、 多くのレンタルサーバーはBasic認証設定ができるのですが、 一部対応していないレンタルサーバーもあるため注意しましょう。
設定手順
- レンタルサーバーの管理画面にアクセス
- Basic認証の設定を開く
- 必要事項の記入
- 確認、完了
レンタルサーバーによって管理画面が異なりますが、大体の手順は上記の通りです。 細かい設定方法については、お使いのレンタルサーバーのマニアルを確認してみましょう。
WordPressプラグインで設定する方法
WordPressはプラグインが豊富なため、Basic認証設定が行えるプラグインも用意されています。基本的にインストールして 有効化するだけなので非常に手軽に設定を行うことができます。
プラグインで設定する特徴
WordPressのプラグインを導入するだけなので、 非常に手軽に設定できることが 特徴となっています。 またプラグインでBasic認証をすることで、Basic認証に対応していないレンタルサーバーでも設定することができることがメリットと言えるでしょう。
しかしプラグインを入れすぎると、サイト自体が重くなったり 脆弱性のあるプラグインを導入してしまう恐れがあるため、セキュリティー面で注意が必要です。
プラグインを導入する際は、情報量が多いものを選んで導入しましょう。
設定手順
- プラグインのインストール
- プラグインの有効化
- ユーザー名とパスワードの設定
設定手順は上記の通りです。今回は初心者にも扱いやすい『WP BASIC Auth』というプラグインを例にご紹介します。
プラグインのインストール
まずはプラグインの導入をするため、『WP BASIC Auth』を検索しましょう。検索後プラグインを探し、インストールを行います。
プラグインの有効化
インストールが完了したら、プラグインを有効化します。インストール後にそのまま有効化してもいいですし、プラグイン全体の管理画面で有効化してもOKです。
ユーザー名とパスワードの設定
認証するためのユーザー名とパスワードの設定は不要です。他のプラグインでは設定する必要がある場合があるのですが、『WP BASIC Auth』であれば不要です。
WordPressの管理画面へのログイン情報と同じ内容で、自動的にBasic認証がかけられます。プラグインを有効化できたら、そのままBasic認証がうまく設定できているかどうか確認してみましょう。
htaccessで手動で設定する方法
レンタルサーバーがBasic認証設定に対応していない。プラグインもなるべく使いたくない。
そのような場合は、htaccessで手動で設定しましょう。
レンタルサーバーのBasic認証設定もプラグインを導入しての設定も、「htaccess」と「htpasswd」2つのファイルを用意して設定されています。htaccessからの設定は、これを手動で行うのです。
htaccessで手動で設定する特徴
手動で設定する分、少し難易度が上がります。例えば必要なコードを直接書いたり、ファイルを準備したりなどです。
Basic認証設定に対応していないレンタルサーバーでも設定することができるため、手間はかかりますが幅広く対応できるのではないでしょうか。
設定手順
htpasswdファイルを作成
まずはユーザー名とパスワードを記述する、「htpasswdファイル」を作成しましょう。テキストエディタなどで「.htpasswd」というファイルを作成します。
その際に、下記の点に注意しましょう。
- 頭にドット(.)を付ける
- 後ろに拡張子(.txtや.htmlなど)は付けない
EN-PC SERVICEというサイトを使うことで、簡単に作成可能です。
作成できたら、「.htpasswd」にコピペします。これで「.htpasswd」というファイルは完了です。その後は、.wp-adminと同じディレクトリへFTPソフトを使ってアップロードしましょう。
htaccessに記述を追加
wp-adminと同じディレクトリ内に「htaccess」ファイルが存在しているはずですので、このファイルを開いて下記のコードを追記しましょう。
1 2 3 4 5 |
AuthUserfile /ルートディレクトリからのフルパスを入力/.htpasswd AuthGroupfile /dev/null AuthName "Please enter your ID and password" AuthType Basic require valid-user |
フルパスを入力する際は、ルートディレクトリからのパスを入力します。例は以下の通りです。
例:/home/ドメイン名/www/ドメイン名/wp-admin/
htaccessファイルを上書きアップロード
先ほどのコードを追記できたら、もともとのhtaccessにFTPソフトでアップロードして上書きします。
これでhtaccessで手動設定する手順は完了です。実際にサイトに アクセスをしてみて確認しましょう。
まとめ
いかがでしたか?
今回の記事では、「WordPressにBasic認証を設定する方法」についてご紹介しました。
プラグインを導入してもBasic認証を行うことができますが、プラグインがなくても設定が可能です。ご自身に合った方法でBasic認証を行っていきましょう。