Запретить доступ к сайту с русскоязычных стран

12
S
На сайте с 17.12.2008
Offline
271
3713

Знаю, что можно сделать самому, но, наверное, у кого-то есть список айпи, я боюсь запутаться в этих самых масках, deny, allow и пр.

Могли бы подсказать, как правильно запретить доступ к сайту из Ru, Ua, By, Kz?

Через .htaccess я так понимаю, это делается. Но нет возможности проверить. не накосячить бы.

Есть вот мануал, но уж больно массивный

15 жирных вечных ссылок с трастовых сайтов с высоким ТИЦ ( https://goo.gl/zd62Qa ) Найдем и устраним SEO-ошибки Вашего сайта, которые мешают продвижению ( https://goo.gl/gHsx1U ) Высококачественный рерайтинг: 50 р. / 1000 знаков ( https://goo.gl/5xDmhE )
AP
На сайте с 14.04.2010
Offline
122
#1

Если вам нужно именно по IP

То можете сгенерировать здесь

http://www.find-ip-address.org/ip-country/

<Limit GET HEAD POST>

order allow,deny

Сгенерированный список нужных стран вставить сюда

allow from all

</LIMIT>

потом все это засунуть в .htaccess

strefapl:

запретить доступ к сайту из Ru, Ua, By, Kz?

в архтве готовый .htaccess со списком указанных стран

[ATTACH]155402[/ATTACH]

Если на хостинге установлен Mod_GeoIP, то можно так

RewriteEngine On

RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(RU|KZ|UA|BY)$

RewriteRule ^(.*)$ http://google.com [L]

zip htaccess.zip
mendel
На сайте с 06.03.2008
Offline
232
#2

Вы отдаете себе отчет в вероятностном подходе да?

Не все русскоязычные будут заблокированны, при этом будут и те, кто к указанным странам не относится, но будут заблокированны за компанию.

Ну и вам нужно именно по странам? Доступные языки браузера не будет ли лучше?

Ну и третий вопрос конечно же - любопытство спрашивает: а зачем собственно?

Шутку любишь над Фомой, так люби и над собой. (с) народ. Бесплатные списки читабельных(!) свободных доменов (http://burzhu.net/showthread.php?t=2976) (5L.com) Сайты, All inclusive. 5* (/ru/forum/962215)
S
На сайте с 17.12.2008
Offline
271
#3
authoritative_person:
Если вам нужно именно по IP
То можете сгенерировать здесь
http://www.find-ip-address.org/ip-country/

<Limit GET HEAD POST>
order allow,deny
Сгенерированный список нужных стран вставить сюда
allow from all
</LIMIT>

потом все это засунуть в .htaccess


в архтве готовый .htaccess со списком указанных стран

[ATTACH]155402[/ATTACH]

Если на хостинге установлен Mod_GeoIP, то можно так

RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(RU|KZ|UA|BY)$
RewriteRule ^(.*)$ http://google.com [L]

Благодарю! Очень большой список. А откуда он? Это, должно быть, какой-то общедоступный файл, ведь кто-то собирал эти айпи.

mendel:
Вы отдаете себе отчет в вероятностном подходе да?
Не все русскоязычные будут заблокированны, при этом будут и те, кто к указанным странам не относится, но будут заблокированны за компанию.

Ну и вам нужно именно по странам? Доступные языки браузера не будет ли лучше?

Ну и третий вопрос конечно же - любопытство спрашивает: а зачем собственно?

Все очень просто. На сайте предоставляются услуги, которые неинтересны гражданам Ru-Ua-Kz-By.

Да, я понимаю, что под раздачу попадет американец или бразилец, который поехал в Казахстан, но это устраивает.

AP
На сайте с 14.04.2010
Offline
122
#4
strefapl:
А откуда он? Это, должно быть, какой-то общедоступный файл, ведь кто-то собирал эти айпи.

Отсюда http://www.find-ip-address.org/ip-country/

У них на сайте диапазоны стран обновляются 1-2 раза в месяц

eiweb
На сайте с 08.11.2014
Offline
82
#5

Если у Вас установлен Mod_GeoIP то в .htaccess добавьте

<IfModule mod_geoip.c>

# включаем реврайт

RewriteEngine on

# включаем GeoIP

GeoIPEnable On

# задаём страны и поведение для них

#SetEnvIf GEOIP_COUNTRY_CODE UA GoodCountry

SetEnvIf GEOIP_COUNTRY_CODE RU GoodCountry

Order Allow,Deny

# разрешаем доступ из сетей страны GoodCountry

Allow from env=GoodCountry

# добавляем исключение

Allow from 91.239.191.0/24 ## Как пример

</IfModule>

PS: Список IP адресов по географическому принципу

Здесь онлайн-калькулятор ip-диапазона в CIDR

VPS сервер (https://hosteiweb.com) в Европе и США - от €3.43 /мес. (базовое администрирование)
S1
На сайте с 15.09.2016
Offline
9
#6

Можно ориентироваться на заголовок Accept-Language, который передает большинство браузеров и на его основе блокировать переходы.

SEO анализ сайта (https://seo11.ru/)
Dr.BoT
На сайте с 23.09.2004
Offline
167
#7

Проще через cloudflare, там можно просто вписать RU, UA и т.д. кодом страны и ограничить легко доступ. Задумано для защиты от ддоса, но подойдет и для других целей.

Mik Foxi
На сайте с 02.03.2011
Offline
1102
#8
seo11:
Можно ориентироваться на заголовок Accept-Language, который передает большинство браузеров и на его основе блокировать переходы.

Да, очень хороший способ.

Антибот, антиспам, веб файрвол, защита от накрутки поведенческих: https://antibot.cloud/ + партнерка, до 40$ с продажи.
mendel
На сайте с 06.03.2008
Offline
232
#9
strefapl:
Да, я понимаю, что под раздачу попадет американец или бразилец, который поехал в Казахстан, но это устраивает.

Не понимаете.

Под раздачу попадут и американцы переехавшие в Канаду и те кто не переезжал)

Бывает IP перепродали или переоформили, а данные неактуальны.

Процент небольшой, но ложные срабатывания неизбежны.

И я не очень представляю реакцию того же гугла который зайдет с российских IP (к примеру ассесор или даже робот какой)...

Для таких операций нужна _ДЕЙСТВИТЕЛЬНО_ веская причина. Я таковую не услышал. Может она у вас есть,но вы не хотите ее озвучивать. В любом случае вы недооцениваете последствия подобных экспериментов.

Mik Foxi
На сайте с 02.03.2011
Offline
1102
#10

mendel, гугл переживет. Это вообще нормальная и очень распространенная практика, банить ненужное (страны, языки, юзерагенты).

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий