1. Проверяем, была ли подключена поддержка HttpGeoipModule nginx -V | grep http_geoip_module Если все ок - идем дальше sudo apt-get install geoip-database libgeoip1 sudo mv /usr/share/GeoIP/GeoIP.dat /usr/share/GeoIP/GeoIP.dat_bak cd /usr/share/GeoIP/ sudo wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz sudo gunzip GeoIP.dat.gz sudo nano /etc/nginx/nginx.conf Добавить в блок http {} перед инклюдами Вариант 1 ( разрешенео всем, кроме китая) geoip_country /usr/share/GeoIP/GeoIP.dat; map $geoip_country_code $allowed_country { default yes; CN no; } Вариант 2 ( запрещено всем, кроме России и Украины) geoip_country /usr/share/GeoIP/GeoIP.dat; map $geoip_country_code $allowed_country { default no; RU yes; UA yes; } Изменение в секции server {} ( Возвращаем 404 ошибку) if ($allowed_country = no) { return 404; } sudo /etc/init.d/nginx reload
заблокировать доступ к сайту пользователям, находящимся в определенных странах. nginx + debian + GeoIP
Добавить комментарий