如何比较我的 public ip 和访客远程地址以授予 php 中的登录访问权限
How to compare my public ip and the visitor remote addr to grant login access in php
我正在构建一个我需要登录用户的站点,但我只需要授予具有相同 public ip 的用户的访问权限,因此我可以假设登录是从同一区域执行的。任何帮助将不胜感激,我正在使用 REMOTE_ADDR 来尝试比较。
除此之外,这种授权是不安全的,你应该使用这样的代码:
$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;
}
我正在构建一个我需要登录用户的站点,但我只需要授予具有相同 public ip 的用户的访问权限,因此我可以假设登录是从同一区域执行的。任何帮助将不胜感激,我正在使用 REMOTE_ADDR 来尝试比较。
除此之外,这种授权是不安全的,你应该使用这样的代码:
$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;
}