!!!ダイジェスト認証とは?
サイトへのアクセスを限られた人だけに許したい場合はベーシック認証が簡単ですが、ログインアカウントとパスワードが平文で流れてしまいます。\\
この危険性を軽減するために、MD5によってパスワードをハッシュ化して認証するのがダイジェスト認証です。\\
Apache2.2では、このダイジェスト認証の設定がApache2.0の時とは一部換えられているので注意が必要です。\\
!!コンパイル
Apache2.2でダイジェスト認証を利用するためには以下のモジュールが必要になります。\\
*[auth_digest_module|http://httpd.apache.org/docs/2.2/mod/mod_auth_digest.html]
*[authn_file_module|http://httpd.apache.org/docs/2.2/mod/mod_authn_file.html] ※1
*[authz_owner_module|http://httpd.apache.org/docs/2.2/mod/mod_authz_owner.html]
*[authz_user_module|http://httpd.apache.org/docs/2.2/mod/mod_authz_user.html]
上記のモジュールが有効になっていない場合は、Apacheのエラーログに次のようなメッセージが出力されます。
%%prettify 
{{{
access to /digest/ failed, reason: verification of user id '<null>' not configured}}}
/%
必要なモジュールを有効にするためのコンパイルは次です。
%%prettify 
{{{
$ ./configure --enable-modules="so auth_digest authn_file authz_user authz_owner"
$ make
$ make install
}}}
/%
この設定では、デフォルトフォルダである '/usr/local/apache2' にインストールされます。インストールフォルダを換えたい場合は '--prefix=/好きなフォルダ' をconfigureに追加します。\\
\\
※1: テキストファイルを使用した認証にはauthn_file_moduleが必要であるとマニュアルには確かに書いてありますが、私が試したところこれを指定しなくてもAuthUserFileディレクティブが有効になっていました。__勘違い?__

!!パスワードファイルの作成
認証で使用するパスワードファイルは次のように作成します。日本語で書いた部分はいずれも任意の値を指定できます。2回目以降にユーザを追加する場合は '-c' オプションが不要です。\\
%%prettify 
{{{
htdigest -c /フォルダ/ファイル名 レルム名 ユーザ名
}}}
/%
作成されたファイルをApache実行ユーザ(デフォルトではdaemon)が読めるようにパーミッションを適宜設定して下さい。\\

!!httpd.confの設定例
%%prettify 
{{{
<Directory "/home/www/digest">
    AllowOverride None
    Options Indexes FollowSymLinks
    Order allow,deny
    Allow from all

    AuthType Digest
    AuthName レルム名                  ← htdigestにて指定した値
    AuthUserFile "/フォルダ/ファイル名" ← htdigestにて指定した値 (Apache2.0ではAuthDigestFileだった)
    AuthDigestProvider file
    Require valid-user
    # Require user ユーザ名            ← 特定のユーザだけに限定したい場合(htdigestにて指定した値)
</Directory>
}}}
/%
設定後、'service httpd restart' などでApacheを再起動して下さい。