@junior_www
Решения вопроса 0
Ответы на вопрос 3
@AlexVWill
Есть подозрение, что из-за него некорректно работает форма авторизации / регистрации на сайте.
Надо бороться с причиной, а не с явлением как таковым. Если форма криво работает из-под VPN, то виновата форма, а не VPN. Половина мира уже сидит в интеренет под VPN, поэтому стоит задуматься о том, что у тебя не так реализовано. Тем более, что каких то объективных причин нарушения работы web-сервера если на него поступают запросы от VPN нет.
Я бы скорее предположил, что в форме реализованы какие то скрипты (возможно даже сторонние JS библиотеки), который блокировщики рекламы считают спамом, и режут их, отсюда и проблема. Надо конкретно смотреть, что не так.
ак определить, что у пользователя включен vpn
Ну определишь ты, и что дальше? Как это тебе поможет реализовать исправление ошибки формы? Лучше задуматься о том, как исправить форму, чтобы все могkи ей пользоваться независимо от VPN.
@vovka3003
Если вы ждёте аудиторию из РФ, а VPN находится за ее пределами, можно дергать IP посетителя ($_SERVER[‘REMOTE_ADDR’];) и прогонять через какой-нибудь сервис типа https://ip-api.com. Результат отличный от «Russua» — обрабатывать, как вам требуется…
Но это как вариант. Способ весьма костыльный.
@CityCat4
2. Проверка DNS. Если IP голладнский, а DNS — российский — однозначно VPN. И наоборот — если IP российский, а DNS например от гугла — можно забанить — не выпендривайся, юзай провайдерский DNS.
3. Проверка локали. Если локаль русская, а IP — голландский, однозначно VPN
4. Проверка таймзоны и локального времени. Если таймзона доступна и она например Europe/Moscow, а IP — голландский — VPN. Если опять же на IP Голландии время, когда в Голландии обычно спят — может быть VPN (хотя я вот постоянно по ночам сижу).
Есть сайт whoer.net. Он предназначен для обратной задачи — проверки уровня анонимности, но сами понимаете, любую задачу можно решать «от противного» и там можно найти много интересного о том, как он опредляет уровень анонимности VPN.