允许主域并禁止通过 .htaccess 访问子文件夹

Allow main domain and disallow subfolders access via .htaccess

我在我的 .htaccess 文件中尝试以下操作,以禁止在不使用 http-auth 的情况下访问多个子目录(例如 admin 和 vpu 文件夹,实际上还有更多)。不幸的是,它可以在我的开发服务器上运行,但不能在我的实时服务器上运行——在实时服务器上,对管理员等的访问不受限制。我想避免将 .htaccess 文件夹放在子目录中;至少有一个我不能写信给。 我错过了什么吗?

SetEnvIfNoCase HOST ^(www\.)?my-domain\.com$ allowed
SetEnvIfNoCase Request_URI ^(admin|vpu)$ !allowed
AuthUserFile "/var/www/.htpasswd"
AuthGroupFile "/var/www/.htgroup"

AuthType Basic
AuthName "Please enter password"
require group admins

Order allow,deny
allow from env=allowed
Satisfy any

感谢您的提示...

不知道它在本地主机上是如何工作的,因为 SetEnvIfNoCase Request_URI 开始与这样的前导斜线匹配:

SetEnvIfNoCase Request_URI ^/(admin|vpu)$ !allowed

试试这个完整的代码:

SetEnvIfNoCase HOST ^(www\.)?my-domain\.com$ allowed
SetEnvIfNoCase Request_URI ^/(admin|vpu)$ !allowed

AuthUserFile "/var/www/.htpasswd"
AuthGroupFile "/var/www/.htgroup"

AuthType Basic
AuthName "Please enter password"
require group admins

Satisfy    any
Order      deny,allow
Deny from  all
allow from env=allowed