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が書けてしまいます。
この記事を読んだ方におすすめ