$res = $this->request->getHeaders();
if(isset($res['http_client_ip'])){
return $res['http_client_ip'];
}elseif(isset($res['x-real-ip'])){
return $res['x-real-ip'];
}elseif(isset($res['x-forwarded-for'])){
return $res['x-forwarded-for'];
}elseif(isset($res['http_x_forwarded_for'])){
//部分CDN会获取多层代理IP,所以转成数组取第一个值
$arr = explode(',',$res['http_x_forwarded_for']);
return $arr[0];
}else{
// return $res['remote_addr'];
$serverParams = $this->request->getServerParams();
return $serverParams['remote_addr'] ?? '';
}
Hyperf 获取用户ip
最新推荐文章于 2024-04-28 11:20:24 发布