Apache 2.4 要我决定:需要有效 IP 还是需要有效用户

Apache 2.4 要我决定:需要有效 IP 还是需要有效用户

Apache 2.4 似乎混合了所有内容:IP 拒绝和用户拒绝不再独立工作。

在旧版本中,我能够启用这两件事,并使用它而不会影响另一件事,例如:

deny from all
allow from ip1
allow from ip2

在apache2.4中等价的是:

require ip ip1
require ip ip2

到目前为止,一切都很好。

但是,当您的网站中有 htacess+htpasswd 时,行为并不像您预期​​的那样,因为它认为所需的 ip 被信任无需密码即可进入,从而分析了 ip .htaccess,甚至最糟糕的是,ip 超出了所需列表的范围,这要.htaccess归功于尝试登录有密码这不是 Apache 2.2 所做的!

在古代 Apache 中,允许的主机是仅有的可以尝试进行身份验证...即使允许,它仍然需要密码才能.htaccess打开网站。

我现在可以使用 mod_acess_compat 来解决该行为...但我认为这不是一个解决方案,因为我在 Apache 2.4 上使用古老的命令...并且我担心会出现一些意外行为或弃用这个模块...

答案1

听起来你想要的是这样的:

<RequireAll>
    <RequireAny>
        Require ip ip1
        Require ip ip2
     </RequireAny>
    Require valid-user
</RequireAll>

相关内容