1. HOME
  2. フロントエンド
  3. Basic認証でサイトにパスワードをかけよう

Basic認証でサイトにパスワードをかけよう

フロントエンド

Basic認証をつけるのを初めて実践してみたので忘れないようにメモ。

.htaccessファイルを作成する

/*例*/
AuthUserFile /*パスワードが書いてあるファイルのサーバー内のフルパス*/
Authname /*表示メッセージ*/
require valid-user
Authtype Basic

require valid-user ・・・認証されたすべてのユーザーのアクセスを許可
Authtype ・・・認証のタイプ。今回はBasic認証のため「 Basic

フルパス調べましょう

フルパスがわからないって方は以下でphpファイルを作りフルパスが調べたいディレクトリにアップロードします。
ブラウザでアクセスするとフルパスが表示されます。

<?php
echo __FILE__;
?>

.htaccessはそれだけ?

もちろんさっきの記述だけでもできないことはないです。

/*例*/
AuthUserFile /*パスワードが書いてあるファイルのサーバー内のフルパス*/
Authname /*表示メッセージ*/
require valid-user
Authtype Basic

このままだと、ブラウザーで直接アクセスしすると見ることが可能です。
それを防ぐためにも特定のファイルへのアクセスを制限する記述をすることをお勧めします。

<Files ~ "^\.(htaccess|htpasswd)$">
    Order allow,deny
    Deny from all
    Satisfy All
</Files>

この記述をしておくと「.htaccess」「.htpasswd」が見れないようになります。
「.ht」までかぶってるからそこだけで制限したいという人は

<Files ~ "\.ht$">
    Order allow,deny
     Deny from all
    Satisfy All
</Files>

という記述で「.ht」から始まる拡張子のファイルは見れなくなります。

.htpasswdの作成

'ID/ユーザー名':''パスワード'

という構成で記述します。
パスワードをは暗号化しておく必要があるため書きのサイトで暗号化するといいかと思います。

パスワード暗号化

おまけ

.htaccessを手書きで書くのは面倒だなと思う方は選択するだけで生成してくれるツールもあるみたいです。
便利ですね・・・。選択してコピペをするだけで.htaccessが書けてしまいます。

.htaccess作成ツール


Basic認証
隠しファイル
備忘録

この記事を読んだ方におすすめ