关注idc主机测评和云服务商活动促销动态,同时推荐免费云服务器,便宜vps,香港云主机,美国海外服务器,空间域名ssl证书及cdn网络加速产品

网站使用CDN加速后,怎么查看用户访问的真实IP?

建站运维 laoliublog 335浏览

很多站长都会遇到这样的问题,网站使用CDN加速后,统计分析工具提供的用户访问IP地址大多非真实IP地址。

这是因为使用CDN网络加速后,所有的用户请求都会通过CDN边缘节点访问,如边缘节点没有缓存,就会向客户源站服务器发起请求,故无法依照之前的方式获取最终用户IP地址。

cdn网络加速作用

如果站长需要获取最终用户IP,则可根据网站编写的脚本语言自行选择下列代码。

PHP:


1
$user_IP ($_SERVER["HTTP_X_REAL_IP"]);

ASP:


1
<% Request.ServerVariables("HTTP_X-Real-IP") %>

Java:


1
String srcIp request.getHeader("X-Real-IP");

C#:


1
String srcIp Request.Headers["X-Real-IP"];

Asp.net:

如果用ServerVariables来获取参数,因为ServerVariables有编码解码的过程,因此应该用HTTP_Cdn_Src_Ip来获取变量,如:


1
result HttpContext.Current.Request.ServerVariables["HTTP_X-Real-IP"];

另外,老刘博客提醒各位站长,我们需要注意的是以上代码需要在切换后才能正式生效,如未切换则可能导致获取IP错误。当然需要采购cdn加速的站长们也可参见老刘博客前文《CDN国内/国际加速流量包0.06元/GB起,续费享长期5折》。

转载请注明:老刘博客 » 网站使用CDN加速后,怎么查看用户访问的真实IP?