Редирект для России

Protektor

Пользователь
Лазил как то по форуму от делать нечего и нашел старую тему на модерации - Модернизация блокировки раздач правообладателями в принципе годная идея была у человека, да и на данный момент как нельзя кстати. ............................................................................................................................................................................................ многоточие - это то что я писал по поводу блокировок , но потом решил удалить дабы не попахивало пропогандой ))) Кто захочет понять тот поймет нужно ли ему то , что ниже описано.
Смортите на это проще, просто тестим возможности модуля)))
И так:
Цель в том что бы весь сайт был доступен для России а вот скачивание Нет.
для php-fpm есть тоже как и для nginx, подобный модуль
Код:
apt-get install php7.1-geoip
cd /usr/share/GeoIP
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
gunzip GeoLiteCity.dat.gz
mv GeoLiteCity.dat GeoIPCity.dat
service php7.1-fpm restart
#или
service apache2 restart
Код:
#   library/includes/functions.php
#  в конец добавить
function countryCode() {
    $country = geoip_country_code_by_name($_SERVER['REMOTE_ADDR']);
    return $country;
}
#простинькая функция при вызове которой будем получать двухбуквенный код страны юзера

#   styles/templates/default/tpl_config.php
'MAGNET_LINKS'                => $bb_cfg['magnet_links_enabled'],
# заменить на 
'MAGNET_LINKS'                => $bb_cfg['magnet_links_enabled'] && countryCode() != 'RU', #прячем магнет ссылку

#   dl.php
# найти 
if (!$authorised) {
# выше добавить 
if(!IS_AM) {                               #это чтобы самим качать с любых ip
    if (countryCode() == 'RU') {
        bb_die($lang['COUNTRY_BAN']);
    }
}

# в языковые добавить (main.php)
$lang['COUNTRY_BAN'] = 'Скачивание в вашем регионе не доступно';
И в принципе все))) с России скачать уже не получится, если не админ или модер. конечно)))
можно пойти еще дальше в файле page_header.php

PHP:
// найти 
'IS_AM' => IS_AM,
// После добавить
'COUNTRY_BAN' => countryCode() == 'RU' && !IS_AM,

и далее в viewtopic_attach.tpl , ту часть кода которая отвечат за вывод инфы о торренте и возможности скачивания примерно
от

Please Login or Register to view hidden text.


и
до

Please Login or Register to view hidden text.



обернуть в теги по такому принципу
Код:
<!-- IF COUNTRY_BAN -->
<p>тут инфа если страна забанена, как обойти бла бла бла</p>
<!-- ELSE -->
тут часть кода которая отвечат за вывод инфы о торренте
<!-- ENDIF --> <!-- end country-ban -->

Думаю разберетесь, не могу точно описать часть кода которую оборачивать в теги , так как у меня кастомный шаблон и если я дам пример из него, то еще больше запутаю вас)))
Стоит отметить что прятать таким образом магнет ссылку не лучшее решение, так как админ тоже не сможет ее видеть, можно ее в теги (как из последнего примера) обернуть , ну мне уже впадлу переписывать , я вам подкинул идею дальше думайте сами .
Модуль кстати при правильном использовании очень полезный , при большой посещаемости можно рекламу по странам или городам фильтровать да и еще много всего можно.
PS: Все это делалось на TP 223 , окружение LEMP
 

Владимир80

Пользователь
Как не крути, итог тот же
"
Доступ ограничен
Доступ к запрашиваемому ресурсу ограничен по решению суда или по иным основаниям,
установленным законодательством Российской Федерации

Please Login or Register to view hidden text.


"
Есть ли примеры работы сайтов через GeoIP?
Это работает только на php7.1 ?
 
Последнее редактирование:

Protektor

Пользователь
Как не крути, итог тот же
"
Доступ ограничен
Доступ к запрашиваемому ресурсу ограничен по решению суда или по иным основаниям,
установленным законодательством Российской Федерации

Please Login or Register to view hidden text.


"
Есть ли примеры работы сайтов через GeoIP?
Это работает только на php7.1 ?
Если домен или ip блокирует провайдер, geoip не поможет, редирект провайдера все равно будет срабатывать раньше.
 

Free-Person

Пользователь
Я тоже пытался подменить домен, при переходе на блокированный, чтобы кидало на зеркало, но бесполезно, редирект не срабатывает.

Видимо мой трекер заблокирован по домену, по ip он доступен.
 
Сверху