時給単価UP【3大特典付き】
コーディングテクニック集100選⋙

【簡単】Basic認証のかけ方を解説【.htaccess/.htpasswd】

記事内に広告を含みます

パソ君
パソ君

・Basic認証ってどうやってかけるの?

こんな疑問にお答えします。

下記のようにユーザー名とパスワードを入力したら閲覧できるサイトありますよね↓

このように閲覧する人を制限する実装が、Basic認証です。

実はこれ簡単に実装できちゃいます。

ジト
ジト

すぐにできるよ!

ということで、この記事では「Basic認証のかけ方」について解説していきます!

この記事でわかること

Basic認証のかけ方

ちなみにコーディング時に使う「.htaccess」の記事もまとめております↓

【解説】コーディング案件で使う「.htaccess」【https・wwwの設定】

【簡単】Basic認証のかけ方の基本【.htaccess/.htpasswd】

今回は「.htaccess/.htpasswd」の2ファイルを使ったBasic認証のかけ方を紹介します。

その場合、基本的な使い方としては下記になります↓

  • 「.htaccess」でBasic認証の定義をする
  • 「.htpasswd」でユーザー名とパスワードを定義する

これをふまえて、かけ方を紹介していきますね。

【簡単】Basic認証のかけ方を解説【.htaccess/.htpasswd】

Basic認証のかけ方は下記の手順です。

  1. 「.htaccess」を用意
  2. 「sample.php」を使いパスをコピペ
  3. 「.htpasswd」を用意
  4. サーバーにファイルをアップ

1つずつ見ていきましょう。

➀:「.htaccess」を用意

まず「.htaccess」ファイルを用意して、下記を記述します。

AuthType Basic
AuthName "Enter ID and password"
AuthUserFile /ここにパスを記述/.htpasswd
require valid-user
AuthType BasicBasic認証を使うという合図
AuthNameBasic認証時にでる文字。
日本語だと文字化けする可能性あり。英語が望ましい。
AuthUserFile「.htpasswd」ファイルがあるパスを記述
require valid-user全ユーザーに対してBasic認証をかけるという定義

2行目と3行目については、ご自身の案件により書き換える必要があります。

ただ3行目の「パス」に関しては、サーバールートから記述しなければなりません。

このパスが正しくないと、「.htaccess」ファイルが「.htpasswd」を見つけることができません。そのため➁のsample.phpを使います!

➁:「sample.php」を使いパスをコピペ

パスを正しく記述するために「sample.php」を使います。

下記コードを記述します。

<?php echo __FILE__; ?>

このコードを実行すると、現在のファイルのパスと名前が出力されます。

その後「sample.php」を、Basic認証をかけるディレクトリに対してFTPでアップロード。

検索すると下記のように反映されます↓

このパスをコピペして「sample.php」部分を「.htpasswd」に書き換えます。

/xxx/xxx/xxx/xxx/.htpasswd

で、このパスを➀で紹介した「.htaccess」の3行目に書き換えましょう↓

AuthType Basic
AuthName "Enter ID and password"
AuthUserFile /xxx/xxx/xxx/xxx/.htpasswd
require valid-user

これで「.htpasswd」までの正しいパスを記述することができました。

(※記述後は、必ずsample.phpファイルをサーバーから削除しておく)

➂:「.htpasswd」を用意

続いて「.htpasswd」にユーザー名とパスワードを定義していきます。

記述としては下記です↓

id:password

「:」を挟むようにします。

例として「ユーザー名がtest」「パスワードをpass」にするとしましょう。

するとこうなります↓

test:evY3b2jjYmfgQ

この一文だけ記述すればOK。

パスワードは必ず暗号化しよう

記述するパスワードは必ず暗号化します。

下記ツールを使えば一発で生成してくれますよ↓

https://tech-unlimited.com/makehtpasswd.html

➃:サーバーにファイルをアップ

あとは実際にサーバーに「.htaccess」と「.htpasswd」ファイルをアップロードしましょう。

下記のようにBasic認証がかかっていて、ユーザー名・パスワードを記述して閲覧できれば実装完成です!

おまけ:特定ファイルのみBasic認証かける

Filesでくくってあげれば、特定ファイルのみにBasic認証をかけることができちゃいます。

<Files ファイル名>
AuthType Basic
AuthName "Enter ID and password"
AuthUserFile /xxx/xxx/xxx/xxx/.htpasswd
require valid-user
</Files>

下記みたいに記述しましょう↓

<Files index.html>
AuthType Basic
AuthName "Enter ID and password"
AuthUserFile /xxx/xxx/xxx/xxx/.htpasswd
require valid-user
</Files>

【簡単】Basic認証のかけ方を解説【.htaccess/.htpasswd】:まとめ

  • 「.htaccess」を用意
  • 「sample.php」を使いパスをコピペ
  • 「.htpasswd」を用意
  • サーバーにファイルをアップ
ジト
ジト

ベーシック認証をかけるときは試してみてね!

ちなみにコーディング時に使う「.htaccess」の記事もまとめております↓

【解説】コーディング案件で使う「.htaccess」【https・wwwの設定】

コメントを残す

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

CAPTCHA