【Basic認証(ベーシック認証)】サイトにアクセス制限をかける

 2019年12月3日
CODE
この記事のURLとタイトルをコピーする
Basic認証(ベーシック認証)とは、WebサイトにIDとパスワードでロックをかけることができる機能です。 IDとパスワードが一致しなければ、サイトを閲覧することができません。

Basic認証をかける理由と、設定の仕方を確認しましょう

Basic認証をかける理由

Basic認証をかける理由は2つあります。
  • ・公開前サイトの閲覧者を管理する
  • ・検索エンジンからはずす(テスト環境など)
公開前のサイトにアクセス制限をかける
制作中のサイトは、クライアントからOKがないと世の中に出すことができません。
サーバーにアップロードした状態でも、Basic認証を設定して入れば特定のユーザーのみ閲覧できるようになります。
検索エンジンからはずす(テスト環境など)
検索エンジンの検索結果に表示させたくない場合も、Basic認証を設定して制限をかけます。

例えば、テスト環境のサイトなど。
URLが異なっていても、同じ内容のサイトが複数あると、検索エンジンのクロールは「重複したサイト」と判断し順位が低くなる場合もあります。
Basic認証をかけていれば、クロールが巡回してきてもIDとパスワードが分からないため、サイトの中身まで回ることはありません。

Basic認証の設定方法

「.htacces」を作成する

以下のコードをコピペし、Basic認証をかけたいディレクトリ直下にアップロードしましょう。
既にファイルがある場合は、ファイルに追加してください。

AuthUserFile

ドキュメントルートを指定します。
この後作成する「.htpasswd」までのフルパスを指定します。
フルパスの確認方法
PHPファイルを使用して確認します。
新しいファイルを作成し、以下のコードをコピペします。 任意のファイル名に、拡張子「.php」を設定して保存します。
このPHPファイルを、Basic認証を設定したいディレクトリにアップロードして、ブラウザからアクセスしましょう。

すると、PHPファイルまでのフルパスが表示されます。
パスの最後に表示されるPHPファイルを、「.htpasswd」に書きかえます。

AuthGroupFile

グループごとのアクセス許可を指定します。
基本的には「/dev/null」で大丈夫です。

AuthName

認証のポップアップに表示される文字列を指定します。
日本語だと環境により文字化けするので、英語で入力すると無難です。

AuthType

認証方式を指定します。
「Basic」にします。

「.htpasswd」を作成する

「.htpasswd」というファイルを作成します。
ファイルに記述する内容を簡単に生成するツールがあります。
htpasswdファイル生成(作成)
.htaccess による認証用 パスワード暗号化ツール
http://www.luft.co.jp/cgi/htpasswd.php

「ID」と「Password」に任意の文字列を入力し、生成ボタンをクリックします。
すると下に「.htpasswd」という、ファイルにコピペするテキストが表示されます。

ファイルにコピペし、「.htaccess」と同じディレクトリ直下にアップロードしましょう。

Basic認証が動作するか確認する

サーバーにアップロードしたら、Basic認証が正常にアクセスするかサイトにアクセスします。
IDをパスワードを入力しサイトが表示されたら、Basic認証の設定は完了です。

さいごに

基本的にはコピペするだけで設定可能なので、コーディングの知識があれば比較的簡単にBasic認証をかけることができるかと思います。

設定する際は状況に応じ、必ずバックアップを取ってから実践してください。
この記事のURLとタイトルをコピーする