web-dev-qa-db-ja.com

特定のURLのhtpasswdを設定します

私はhtpasswdファイルを持っていますが、正常に動作します-私のhtaccessには次のものがあります:

<Limit GET POST>
require valid-user
</Limit>

これは機能しますが、ウェブサイトのルートに到達すると、login/passwdが正常に表示されます。ただし、これを制限して、login/passwdがユーザーがたとえばhttp://mywebsite.com/appear/here/*に到達したときにのみ表示されるようにする必要があります。したがって、基本的にユーザーが/appear/here/*に到達したときに表示されます。

私は 特定のフォルダではなくURLへのアクセスを制限するためにhtpasswdを使用できますか? -を調べましたが、それでも理解できないようです。

試しました:

<Files /appear/here/*>
require valid-user
</Files>

<Directory /appear/here/*>
require valid-user
</Directory>
2
williamsowen

<Directory>は、サーバー上の物理ディレクトリパス用です。または、<Location>を使用できます。

これらの1つ:

<Directory /path/to/webroot/appear/here>
    Require valid-user
</Directory>

または:

<Location /appear/here>
    Require valid-user
</Location>
1
Shane Madden

<Files >ディレクティブは、ファイル名に至るまでのパスではなく、ファイル名と一致しようとします。したがって、スラッシュを含む<Files >ディレクティブは無効です。多くの場合、ファイル名の拡張子を一致させるために使用されます。

<Directory >ディレクティブはディレクトリ用ですファイルシステムのルートに対して。したがって、おそらく<Directory /var/www/docroot/appear/here>が必要です。

URIは常にファイルシステムのパスと一致するとは限らないため、<Location >ディレクティブを使用した方がよい場合があります。これは、URIがURIと一致するためです。

<Location /appear/here>
  require valid-user
</Location>
1
Ladadadada