私は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>
<Directory>
は、サーバー上の物理ディレクトリパス用です。または、<Location>
を使用できます。
これらの1つ:
<Directory /path/to/webroot/appear/here>
Require valid-user
</Directory>
または:
<Location /appear/here>
Require valid-user
</Location>
<Files >
ディレクティブは、ファイル名に至るまでのパスではなく、ファイル名と一致しようとします。したがって、スラッシュを含む<Files >
ディレクティブは無効です。多くの場合、ファイル名の拡張子を一致させるために使用されます。
<Directory >
ディレクティブはディレクトリ用ですファイルシステムのルートに対して。したがって、おそらく<Directory /var/www/docroot/appear/here>
が必要です。
URIは常にファイルシステムのパスと一致するとは限らないため、<Location >
ディレクティブを使用した方がよい場合があります。これは、URIがURIと一致するためです。
<Location /appear/here>
require valid-user
</Location>