Установка модуля GeoIP в альтернативную PHP 8.х

https://github.com/rlerdorf/geoip — вот репозиторий с портом legacy GeoIP для PHP 8.x

git clone https://github.com/rlerdorf/geoip.git
cd ./geoip/

Потребуется дополнительно установить пакеты

sudo apt-get install libgeoip-dev geoip-bin geoip-database
sudo apt-get install autoconf
sudo apt-get install build-essential

Запустите конфигурирование и сборку расширения

/opt/php81/bin/phpize
autoconf
autoheader
./configure --with-php-config=/opt/php81/bin/php-config && make && make
make install

Включите расширение глобально для нужной версии PHP

echo 'extension=geoip.so geoip.custom_directory=/usr/share/GeoIP/' > /opt/php81/etc/php-fpm.d/20-geoip.ini

Скачиваем с https://www.miyuru.lk/geoiplegacy и перемещаем в папку /usr/share/GeoIP/

Примеры использования:

$user_ip = $_SERVER['REMOTE_ADDR'];
$country_code = geoip_country_code_by_name($user_ip);
if($country_code == 'RU'){
    // Ваш контент здесь
    header("Location: https://xxxx.info");
exit( );
}
if (stripos($name, 'vpn') !== false) {
    $user_ip = $_SERVER['REMOTE_ADDR'];
    $country_code = geoip_country_code_by_name($user_ip);
    if($country_code == 'RU'){
        // Ваш контент здесь
        unset($items[$i]);
        $itemID = '';
        $countitem = $countitem-1;
   }
    }
function checkVPNAndRedirect($query) {
    $valuesvpn = ['PIA VPN','vpn', 'ExpressVPN', 'NordVPN', 'CyberGhost', 'Surfshark', 'PrivateVPN', 'Hotspot Shield', 'TunnelBear', 'Windscribe', 'VyprVPN', 'IPVanish', 'ProtonVPN', 'PureVPN', 'HideMyAss', 'TorGuard', 'Astrill'];
    $user_ip = $_SERVER['REMOTE_ADDR'];
    $country_code = geoip_country_code_by_name($user_ip);

    foreach ($valuesvpn as $value) {
        if (stripos($query, $value) !== false) {
            if($country_code == 'RU'){
                header("Location: https://xxxx.info");
                exit();
            }
        }
    }
}
Установка модуля GeoIP в альтернативную PHP 8.х

Оцените статью
( 4 оценки, среднее 5 из 5 )
PcMiniPro
Добавить комментарий

219 / 0,720 / 74.72mb