![パソ君](https://jito-site.com/wp-content/uploads/2022/02/computer09_question.png)
・Basic認証ってどうやってかけるの?
こんな疑問にお答えします。
下記のようにユーザー名とパスワードを入力したら閲覧できるサイトありますよね↓
![](https://jito-site.com/wp-content/uploads/2023/05/ef646f0cc5c67ecf3c22643281e8a28f.png)
このように閲覧する人を制限する実装が、Basic認証です。
実はこれ簡単に実装できちゃいます。
![ジト](https://jito-site.com/wp-content/uploads/2022/02/image.jpg)
すぐにできるよ!
ということで、この記事では「Basic認証のかけ方」について解説していきます!
Basic認証のかけ方
ちなみにコーディング時に使う「.htaccess」の記事もまとめております↓
![](https://jito-site.com/wp-content/uploads/2023/05/606a07952aaf88e656666e6753f44c7f-1-160x160.png)
目次
【簡単】Basic認証のかけ方の基本【.htaccess/.htpasswd】
今回は「.htaccess/.htpasswd」の2ファイルを使ったBasic認証のかけ方を紹介します。
その場合、基本的な使い方としては下記になります↓
- 「.htaccess」でBasic認証の定義をする
- 「.htpasswd」でユーザー名とパスワードを定義する
これをふまえて、かけ方を紹介していきますね。
【簡単】Basic認証のかけ方を解説【.htaccess/.htpasswd】
Basic認証のかけ方は下記の手順です。
- 「.htaccess」を用意
- 「sample.php」を使いパスをコピペ
- 「.htpasswd」を用意
- サーバーにファイルをアップ
1つずつ見ていきましょう。
まず「.htaccess」ファイルを用意して、下記を記述します。
AuthType Basic
AuthName "Enter ID and password"
AuthUserFile /ここにパスを記述/.htpasswd
require valid-user
AuthType Basic | Basic認証を使うという合図 |
AuthName | Basic認証時にでる文字。 日本語だと文字化けする可能性あり。英語が望ましい。 |
AuthUserFile | 「.htpasswd」ファイルがあるパスを記述 |
require valid-user | 全ユーザーに対してBasic認証をかけるという定義 |
2行目と3行目については、ご自身の案件により書き換える必要があります。
ただ3行目の「パス」に関しては、サーバールートから記述しなければなりません。
このパスが正しくないと、「.htaccess」ファイルが「.htpasswd」を見つけることができません。そのため➁のsample.phpを使います!
パスを正しく記述するために「sample.php」を使います。
下記コードを記述します。
<?php echo __FILE__; ?>
このコードを実行すると、現在のファイルのパスと名前が出力されます。
その後「sample.php」を、Basic認証をかけるディレクトリに対してFTPでアップロード。
検索すると下記のように反映されます↓
![](https://jito-site.com/wp-content/uploads/2023/05/a975b1d40661efc8e607f9d052beb146.png)
このパスをコピペして「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」にユーザー名とパスワードを定義していきます。
記述としては下記です↓
id:password
「:」を挟むようにします。
例として「ユーザー名がtest」「パスワードをpass」にするとしましょう。
するとこうなります↓
test:evY3b2jjYmfgQ
この一文だけ記述すればOK。
記述するパスワードは必ず暗号化します。
下記ツールを使えば一発で生成してくれますよ↓
https://tech-unlimited.com/makehtpasswd.html
![](https://jito-site.com/wp-content/uploads/2023/05/2a604d721570d754ae0ae52edfc3bc9d.png)
あとは実際にサーバーに「.htaccess」と「.htpasswd」ファイルをアップロードしましょう。
下記のようにBasic認証がかかっていて、ユーザー名・パスワードを記述して閲覧できれば実装完成です!
![](https://jito-site.com/wp-content/uploads/2023/05/20230522_112943.gif)
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」を用意
- サーバーにファイルをアップ
![ジト](https://jito-site.com/wp-content/uploads/2022/02/image.jpg)
ベーシック認証をかけるときは試してみてね!
ちなみにコーディング時に使う「.htaccess」の記事もまとめております↓
![](https://jito-site.com/wp-content/uploads/2023/05/606a07952aaf88e656666e6753f44c7f-1-160x160.png)