.htaccessと.htpasswdでサイトにベーシック認証(Basic認証)をかける

.htaccessと.htpasswdでサイトにベーシック認証(Basic認証)をかける


サイト制作段階に、サイトを公開するまでパスワードを設定して、一般ユーザーが見れないようにする
.htaccessと.htpasswdを使って、ベーシック認証の特徴と、設定方法をまとめました。

.htaccess関連記事

ベーシック認証(Basic認証)とは?

公開前のサイトを一般ユーザーが見れないようにするためにベーシック認証をかけることがよくあります。
ベーシック認証をかけるには、.htaccessと.htpasswdを使うことが多いと思います。
そこで、ベーシック認証の特徴をまとめます。

ディレクトリ単位でのアクセス制限が可能

.htaccessは、設置されたディレクトリに適用されます。
つまり、.htaccessでベーシック認証を設定するので、適用できる範囲は.htaccessと同じ、ディレクトリ単位となります。
また、適用範囲内であれば、画像やPDFファイルなどもベーシック認証の範囲内となるので、それらもアクセス制限がかけられます。

認証完了後はブラウザを閉じるまで有効

ベーシック認証は、ユーザーが正しいIDとパスワードで認証に成功すると、そのブラウザを閉じるまでのは、再認証が必要ありません。
別のブラウザで見る場合は、認証が必要です。

.htpasswdの作り方

.htpasswdは、ベーシック認証のIDとパスワードを保存しています。
ベーシック認証を設定したいディレクトリに、.htaccessと一緒のディレクトリに設置します。
下記サイトは、IDとパスワードを入力するだけで、作成してくれます。

htpasswdファイル生成(作成)
htpasswdファイル生成(htpasswdファイル作成)するweb・ウェブ制作に役立つ便利ツール。htaccessを利用したユーザー認証によるアクセス制限(ベーシック認証)が可能です。

.htaccessの書き方

.htaccess

<Files ~ "^\.(htaccess|htpasswd)$">
  Deny from all
</Files>
AuthType Basic
AuthUserFile /home/サーバーのパス/public_html/.htpasswd
AuthName "Please enter your ID and password"
Require valid-user

基本的には、上記コードのAuthUserFileを部分を書き換えるだけで大丈夫です。
ここには、サーバーからのパスを指定します。

ベーシック認証を設定する

上記の.htaccessと.htpasswdをサーバーにアップロードします。
設置場所は、.htaccessで指定した、どちらも同じディレクトリにアップロードします。
これで完成です!

コメント

タイトルとURLをコピーしました