除了使用.htaccess或vhost.conf的具有特定名称的子目录之外,不允许在目录中的所有内容

我怎么能禁止在目录中的一切,除了具有特定名称的子目录使用htaccess甚至vhost.conf的网站? 我有一个受保护的主目录,其中包含子目录。 每个子目录都有另一个名为“拇指”的子目录,我想让人们访问。 在thumbs文件夹中,我的文件都以“thumb_”前缀开头。 那么使用哪种方法,.htaccess FilesMatch或者vhost DirectoryMatch? 和将使用的代码是什么? 谢谢

所以,如果我理解这个权利,只要允许名为thumb_*文件(如果它们位于名为thumbs的目录内,该文件位于受保护的目录的子目录内) 不强制执行名为thumbs的目录会更简单,因为那样你就需要<FilesMatch>

听起来像path是,例如/path/to/protected_dir/subdir/thumbs/thumb_1.png

如果这是正确的,这应该强制执行你正在寻找的各种限制 – 只要确保没有其他可能会干扰权限设置的configuration块:

 <Directory /path/to/protected_dir> Order Deny,Allow Deny from all </Directory> <LocationMatch "^/url/path/to/protected_dir/[^/]+/thumbs/thumb_.*"> Allow from all </LocationMatch> 

如果你不担心强制执行确切的目录树结构,这是一个更简单的方法:

 <Directory /path/to/protected_dir> Order Deny,Allow Deny from all <FilesMatch "^thumbs_.*"> Allow from all </FilesMatch> </Directory>