apache 2.2 和 http 身份验证。使用 mod_geoip 按国家/地区进行

apache 2.2 和 http 身份验证。使用 mod_geoip 按国家/地区进行

我正在使用 mod_geoip 过滤一些流量。所以现在我有这个

SetEnvIf GEOIP_COUNTRY_CODE FR AllowCountry
<Locationmatch "/secure-by-country">
Deny from all
Allow from env=AllowCountry
</..

但现在我需要为被屏蔽的国家添加 http 身份验证。因此:

如果 IP不是从 env=AllowCountry 显示 http 身份验证,如果客户端发送有效的凭据则允许访问。

有可能吗?如何将 Locationmatch 和 Mod_geoip 与某种类型的 IF 混合?

多谢

答案1

我有它:) - 允许和要求必须按有效顺序

<Locationmatch "/secure-by-country">
AuthName "Secure area"
AuthType Basic
AuthUserFile /var/.../.htpasswd
AuthGroupFile /dev/null
Satisfy any
Deny from all
Allow from env=AllowCountry
require valid-user
</Locationmatch>

相关内容