Apache2. Установка mod_geoip Debian

apt install libapache2-mod-geoip
/etc/apache2/mods-available/geoip.conf :

<IfModule mod_geoip.c>
  GeoIPEnable On
  GeoIPDBFile /usr/share/GeoIP/GeoIP.dat
</IfModule>

Проверка:

<?php
print_r($_SERVER);
?>
<html>
<body>
<?php
$country_name = apache_note("GEOIP_COUNTRY_NAME");
print "Country: " . $country_name;
?>
</body>
</html>

Запрет доступа к сайту через .htaccess :

RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^UA$
RewriteRule .* – [F]
Данный пример закрывает доступ к сайту с Украины
Все, кроме РФ вот (восклицательный знак - знак отрицания в данном случае):

RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^!RU$
RewriteRule .* – [F]

Но с таким подходом, кстати, вы закроете доступ к сайту и для Google Bot, который Mountain View, United States
Запись опубликована в рубрике apache, Linux. Добавьте в закладки постоянную ссылку.