开启CDN后获取用户真实IP方法 常见代码

开启CDN之后 ,拿到的IP都是CDN节点的,而我不可能把CDN的节点IP也给禁用了,那就都不能访问了。 下面是读取 Cdn-Real-ip 代码片段:

C#:

1
2
3
4
String srcIp = Request.Headers["Cdn-Real-Ip"];                          
if(srcIp == null){                                                      
 srcIp = Request.UserHostAddress;                         
}

JAVA:

1
2
3
4
String srcIp = request.getHeader("Cdn-Real-Ip");                        
 if(srcIp == null){                                                 
 srcIp = request.getRemoteAddr();                                 
}

request 是 HttpServletRequest 类型的参数,无论是直接写 serverlet 还是用 struts 都会传入该参数

PHP:

1
2
3
4
<?php                                                                   
 $user_IP = ($_SERVER["HTTP_CDN_REAL_IP"]);                              
 echo $user_IP;                                                          
?>

原创文章,作者:Harem,如若转载,请注明出处:https://www.hgjun.cn/?p=1266

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

QQ-501439094

撩一撩:点击这里给我发消息

邮件:501439094@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

隐藏