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 auth。對於被封鎖的國家。所以:

如果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>

相關內容