Webサーバ Apache 2.2.10 で、Basic 認証してみよう。意外と簡単(^-^)


Webサーバ Apache で、Basic 認証する方法をメモります。
どうも、かずや、でっせ☆

大まかな流れを書くと、
(1).htpasswd ファイルをつくって、
(2)httpd.conf を編集して、
(3).htaccess ファイルをつくって、
(4)apache を再起動する、
という、4つの操作が必要。

ちなみに、動作確認した Apache のバージョンは、次のとおり。
Server version: Apache/2.2.10 (Unix)
Server built: Jul 27 2011 11:32:59

apache-basic
では、細かくいきましょう。

(1).htpasswd ファイルをつくる
「htpasswd」コマンドで、.htpasswd ファイルをつくります。
このファイルには、認証したいユーザのパスワードが書かれます。
例:htpasswd -c /dir/.htpasswd kazuyadesse

htpasswd Apache の bin 下にある実行ファイル。
-c 新規で作成する場合に必要なオプション。
.htpasswd 任意のパスでOK。ドキュメントルート配下は避けたほうがよいでしょう。
上記の例では、/dir 直下に作っています。
ユーザ名 アクセスのときに認証を必要とするユーザ名。
例では、ユーザ「kazuyadesse」で作っています。

(2)httpd.conf を編集する
httpd.conf ファイルに、以下3行を追加します。
<Directory パス>
AllowOverride All
</Directory>

パス 認証をかけたいディレクトリのパス

(3).htaccess ファイルをつくる
(2)で編集した「認証をかけたいディレクトリ」の直下に、.htaccess ファイルを作ります。
エディタで以下の内容を書きましょう。
AuthType Basic
AuthName "IDとパスワードを入力してください。"
AuthUserFile パス
require valid-user

パス (1)で作った .htpasswd ファイルのパス

(4)apache を再起動する

これで完了!(^-^)v
わかってしまうと、意外と簡単。さすが「ベーシック」!

これで、http://ドメイン/A/ やhttp://ドメイン/B/ にアクセスしたとき、IDとパスワードを入力する画面が表示されます!


コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください