Я создаю сайт, где мне нужно войти в систему, но мне нужно предоставить доступ только тем пользователям, у которых есть мой общий публичный IP-адрес, поэтому я могу предположить, что логин был выполнен из той же области. Любая помощь будет очень оценена, и я использую REMOTE_ADDR для сравнения.
Кроме того, такой авторизацией является UNSAFE, вы должны использовать такой код:
$ip = getIp();
$authIp = 'IP YOU WANT TO COMPARE TO';
if($ip == $authIp)
{
//access granted
}
function getIp(){
$ip = '';
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
HTTP-X-FORWARDED_FOR
могут быть легко подделаны до прибытия на сервер. Таким образом, основывать систему входа в систему на них, как уже сказал Ty221, очень небезопасно .