.htaccess と .htpasswd について。


複数のディレクトリ(数十個)があり、
ディレクトリ毎にパスワードを変えたいために
現在各ディレクトリ毎に上記2つのファイルを設置していますが、
これを、それぞれ一つのファイルにして管理することはできませんでしょうか?

よろしくお願いします。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/12/13 14:31:18
  • 終了:2011/12/20 14:35:03

回答(2件)

id:a-kuma3 No.1

a-kuma3回答回数4523ベストアンサー獲得回数18802011/12/13 15:06:55

httpd.conf に以下のように書けます。

<IfModule mod_alias.c>

    Alias /a-kuma3/   "xxx/a-kuma3/"
    <Directory "xxx/a-kuma3/">
        AuthType        Basic
        AuthName        "Enter password"
        AuthUserFile    xxx/kuma3s.passwd
        <Limit GET POST>
            Require         user a-kuma3
        </Limit>
         AllowOverride None
         xxx
    </Directory>

    Alias /b-kuma3/   "xxx/b-kuma3/"
    <Directory "xxx/b-kuma3/">
        AuthType        Basic
        AuthName        "Enter password"
        AuthUserFile    xxx/kuma3s.passwd
        <Limit GET POST>
            Require         user b-kuma3
        </Limit>
         AllowOverride None
         xxx
    </Directory>

    ...

</IfModule>

ユーザに、a-kuma3、b-kuma3 がいて、パスワードを kuma3s.passwd ひとつにまとめちゃう。

httpd.conf を汚したくないなら、別のファイルに書いておいて、httpd.conf では、

Include  xxx/kuma3s.htaccess

と書きます。

パスワードファイルを共用にしちゃうことになるので、アクセス権限が難しいですね。
他のユーザからは .htpasswd の断片をもらって、管理者が追加/変更する、という感じですかね。

id:worldtravel

confを書き換えなければならないんですね。
参考になります。
コードまでありがとうございました。

2011/12/13 17:38:04
id:uwao No.2

uwao回答回数171ベストアンサー獲得回数362011/12/13 15:15:19

ベーシック認証は、「.htaccess」が入っているフォルダ内に制限をかけるものなので、各フォルダに「.htaccess」を設置する必要があるとあると思います。
また、フォルダ毎のパスワードを変更する場合、やはりフォルダ毎に「.htpasswd」を設置した方が良いと思います。
 
パスワードの管理が大変でしたら、下記のようなフリーソフトもあります。
アクセス制限CGI
http://www.chama.ne.jp/download/etc/basic/index.htm
ブラウザからベーシック認証のパスワードの変更などが出来るようです。

id:worldtravel

cgiで管理してしまうと言うのもいいかもしれませんね。
自分で作れば管理の楽な方法にできそうな気がしてきました。
ありがとうございました。

2011/12/13 17:39:56

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません