Могу ли я запретить или ограничить страну на основе IP?
Я получаю 6-10 подписей с таких мест, как Нигерия и Гана в Африке. В настоящее время я просматриваю IP-адреса, так что можно ограничить диапазон IP-адресов из определенной страны?
Если я могу их найти, имеет ли смысл добавить этот диапазон в мой файл .htaccess или ограничить их на уровне сайта?
Ответы
Ответ 1
Вы можете получить базу данных maxmind:
http://www.maxmind.com/app/mod_geoip
и используйте этот код:
GeoIPEnable On
GeoIPDBFile /path/to/GeoIP.dat
# Redirect multiple countries to a single page
RewriteEngine on
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(NI|GH)$
RewriteRule ^(.*)$ - [F]
Ответ 2
Да, вы можете. Используйте GEOIP. http://www.maxmind.com/app/php
http://www.maxmind.com/app/mod_geoip
Ответ 3
Просто Google для GEOIP - там есть множество бесплатных сервисов, вы также можете получить файл, содержащий конкретные IP-шаблоны для конкретной страны. Никакие услуги не предоставят вам 100% -ную защиту, поскольку это возможно, чтобы подделать IP-адрес.
Ответ 4
Использование Apache mod_geoip:
GeoIPEnable On
GeoIPDBFile /path/to/GeoIP.dat
SetEnvIf GEOIP_COUNTRY_CODE US BlockCountry
# ... place more countries here
Deny from env=BlockCountry