我使用 WordPress 已经很多年了,但是我想要存储在 .htaccess 中的访问规则有一个微妙的问题。我实际上使用 Apache 2.4.56。
第一个客户端IP地址应该能够完全访问Web服务器,因此:
require ip 192.168.124.1
现在我有第二个客户端 IP 地址,也应该允许它访问 Web 服务器,但仅限于名为 /foo 的特定目录结构。此访问规则应适用于 /foo,但也适用于其下面的所有内容,例如/foo/酒吧。共享文件夹结构中不应该明确存在重定向,即如果有人想要访问 /foo/bar,那么他们也应该被允许访问 /foo/bar。
由于我使用WordPress,目录结构只是虚拟的,所以我无法在子目录结构中存储自己的.htaccess文件。
问候, 贝西姆
您可以尝试在第二条规则中使用 Apache 表达式。例如:
Require ip 192.168.124.1
Require expr "%{REQUEST_URI} =~ '^/foo($|/)' && %{REMOTE_ADDR} == '192.168.124.2'"
如果这些规则未在 container 中显式存在,则默认为
<RequireAny>
,因此这些规则中的任何一个都必须为 true 才能授予访问权限。