KLUTCHE

【htaccess】サイトにBASIC認証でパスワードをかける方法

コンテンツにパスワードをかける方法はいろいろありますが、.htaccessを使ってBASIC認証を設置する方法を紹介します。

ベーシック認証って?

.htaccessを使ってパスワードをかけます。.htaccessを設置したフォルダ以下のファイルへアクセスさせません。シンプルですが非常に強力なセキュリティです。
下のデモページはBASIC認証によりロックれています。

デモページ

.htaccessの書き方

パスワードをかけたいフォルダに、.htaccessというファイルを作成して以下のような記載をします。

AuthUserFile /home/site/.htpasswd
AuthGroupFile /dev/null
Authname "Please enter your ID and password"
Authtype Basic
require valid-user

最初の行のAuthUserFileとはログインするユーザーのIDとパスワードを書いたファイルの場所を記載します。
ここで注意は、サーバールートからのフルパスを記載しなければならないということです。
相対パスではダメです。レンタルサーバーであればマニュアルにフルパスについて記載してあると思います。

AuthGroupFileとはログインするグループのIDとパスワードを書いたファイルの場所を記載するのですが、BASIC認証はユーザーごとの認証の為、必要ありません。特に指定が無いという意味で/dev/nullと記載します。

Authnameはパスワードをかける領域名です。別に何でも良いです。
たいていのブラウザでパスワード入力時にボックスの中に表示されるので、それらしい言葉を書いておきましょう。

Authtypeは認証方式です。BASIC認証を使うのでbasicと記載します。

require valid-userとは認証された全ユーザーのアクセスを許可するという意味です。

.htpasswdの書き方

.haccessで指定したパスに.htpasswdという名前のファイルを設置して以下のような記載をします。

id:xbxzjfvCRPYvg

【id】:【pass】という構成です。
改行で同じように記載を追加することでユーザーをどんどん増やせます。

パスワード部分は暗号化された文字を記載します。
crypt関数というものでパスワードをハッシュ化する必要があります。

自動でハッシュ化するフォームを作りました。

.htpasswdファイルを生成する


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です