みかづきブログ・カスタム

基本的にはちょちょいのほいです。

.htaccessを使ってApacheにBasic認証をかける(さくらのレンタルサーバなど) 🔐

f:id:kimizuka:20210609230604p:plain

blog.kimizuka.org やら Netlify やら Firebase Hosting + Cloud Functions にBasic認証をかけることはあったのですが、単純なApacheにBasic認証を掛けたことがなかったので調べました。

❶ Basic認証をかけるディレクトリのパスを調べる

PHPが動く環境だったので、僕はPHPで調べました。

path.php

<?php echo __FILE__; ?>

こんなファイルをFTPでアップして、ブラウザでアクセスすれば、ブラウザにパスが表示されます。
さくらのレンタルサーバの場合、

/home/hogehoge/www/fugafuga/path.php

みたいな感じです。
パスが確認できたらpath.phpはお役御免。削除しましょう。

❷ .htpasswdをつくる

user:password

のような形式で作るのですが、パスワードを暗号化しないといけません。
僕はこちらのサイトで暗号化しました。

www.luft.co.jp

❸ .htaccessをつくる

AuthType Basic
AuthName "Input your ID and Password."
AuthUserFile /home/hogehoge/www/fugafuga/.htpasswd
require valid-user

こんな感じでOKです。
.htpasswdは❶で調べたディレクトリに置く想定なので、AuthUserFileには❶で調べたパスと繋げて書きます。

❹ .htpasswdと.htaccessをアップする

アップしましょう。



以上が、ApacheにBasic認証をかける手順となります。