特定のディレクトリのすべてのサブディレクトリへのアクセスを拒否するにはどうすればよいですか? (ディレクトリ ツリー内の単一項目のアクセス権を手動で変更できるようにします。)
<Directory(Match)>
私はディレクティブでそれをやろうとしました。サーバー構成 (000-sites-enabled) は次のようになります。
DocumentRoot /var/www
<Directory /var/www>
Allow from all
Deny from none
Order deny,allow
</Directory>
<Directory /var/www/*>
Deny from all
</Directory>
クエリがhttp://localhost/
正常に表示され/var/www/index.html
、サブディレクトリへのすべてのクエリが失敗します。
問題は、httproot 内のファイルへのクエリが失敗http://localhost/index.html
することです。つまり、リクエストすると403 Forbidden
.
<Directory(Match)>
ディレクティブは、実際にはディレクトリとファイルに一致するようです! ?
これが本当かどうかを確認するために、私は試しました:
<Directory /var/www/i*>
Deny from all
</Directory>
これにより、「i」で始まるファイル/ディレクトリへのアクセスのみが拒否されます。
<Directory>
この動作を変更して、ディレクトリのみを一致させる方法はありますか? すべてのサブディレクトリを拒否する別の方法はありますか? (それらすべてを手動で拒否するか、すべてのファイルを手動で有効にする以外に)