2012-11-02 20 views
5

私は自分のサイトのルートにあるhtaccessファイルを使ってディレクトリをパスワードで保護することができます(CMSのために自分のサイトルートにhtaccessファイルを1つ使用する必要があります)。私が抱えている問題は、保護したい各ディレクトリにユーザーを割り当てることです。複数のユーザーを作成し、複数のディレクトリをパスワードで保護することはできますが、どのユーザーも保護されたディレクトリで作業できます。例:パスワードはhtaccessで複数のディレクトリを保護します

example.com/section-oneはプライベートで、ユーザー "one"がアクセスする必要があります。

example.com/section-twoはプライベートであり、ユーザー "two"によってアクセスされる必要があります。

しかし、どのユーザーもどちらのセクションでも作業し、ユーザーがパスワードを要求されることなく他のユーザーにアクセスできるようになると、そのセクションにログインします。私はhtaccessファイルに問題があることを知っています。私は使用しようとしましたが、フォーマットを理解できないようです。オンラインのすべての情報は、ファイルに対してこれを行う方法を示していますが、ディレクトリはヘルプを見つけるのが簡単ではありません。

私はこれを使用しています:

<IfModule mod_authn_file.c> 
SetEnvIf Request_URI "^/section-one.*$" private 
AuthName "Password Needed" 
AuthGroupFile /dev/null 
AuthType Basic 
AuthUserFile /www/server/.htpasswd 
Require user one 
Order Deny,Allow 
Deny from env=private 
Satisfy any 
</IfModule> 

<IfModule mod_authn_file.c> 
SetEnvIf Request_URI "^/section-two.*$" private 
AuthName "Password Needed" 
AuthGroupFile /dev/null 
AuthType Basic 
AuthUserFile /www/server/.htpasswd 
Require User two 
Order Deny,Allow 
Deny from env=private 
Satisfy any 
</IfModule> 

答えて

4

.htaccessファイルは、それらが置かれているディレクトリに特定の設定ディレクティブを適用するために使用されています。 1つの.htaccessファイルを使用して、異なるディレクトリに異なる構成を指定することはできません。アクセス制御をserver/vhost設定ファイルに入れるか、ディレクトリごとに.htaccessを1つ使用する必要があります。

関連する問題