Nasledujúci kód na zablokovanie jednej adresy ip v htaccess a funguje to dobre
SetEnvIF X-Forwarded-For 182.65.209.192 DenyIP
Order allow,deny
Deny from env=DenyIP
Allow from all
Teraz chcem blokovať adresy IP krajín, aby navštívili moje stránky.
Skúsil som to, ale nefungoval
SetEnvIF X-Forwarded-For 37.230.192.0/19 DenyIP
a
SetEnvIF X-Forwarded-For 37.230.192.[0-19] DenyIP
namiesto
SetEnvIF X-Forwarded-For 182.65.209.192 DenyIP
Ako blokovať rozsah ip alebo podsieť ip (napríklad: 37.230.192.0/19)?
odpovede:
2 pre odpoveď č. 1SetEnvIF používa regulárny výraz:
http://httpd.apache.org/docs/current/en/mod/mod_setenvif.html#setenvif
Môžeš použiť:
SetEnvIF X-Forwarded-For ^37.230.192.[01][0-9]?$ DenyIP
2 pre odpoveď č. 2
Nemôžete zápasiť s rozsahmi adries CIDR, musíte použiť regulárny výraz. Chcete niečo také:
SetEnvIF X-Forwarded-For 37.230.(19[2-9]|2[01][0-9]|22[0-3]).[0-9]+ DenyIP
SetEnvIf Remote_Addr 37.230.(19[2-9]|2[01][0-9]|22[0-3]).[0-9]+ DenyIP
SetEnvIF X-Forwarded-For 37.230.2[23][0-9].[0-9]+ DenyIP
SetEnvIf Remote_Addr 37.230.2[23][0-9].[0-9]+ DenyIP