使用UPYUN(又拍云)CDN后获取访客真实IP

2016年4月7日10:15:01 评论 713

国内大多数的CDN在回源访问的时候都会带上X_FORWARDED_FOR请求头,里面包含有HTTP的请求端真实的IP。但UPYUN CDN在回源的时候没有带X_FORWARDED_FOR请求头,所以原使用HTTP_X_FORWARDED_FOR获取访客真实IP的程序失效。

upyun

按照UPYUN CDN说明文档,UPYUN CDN 回客户源的时候会带这个 X_REAL_IP 的请求头下去,值为用户实际访问 CDN 的来源 IP 地址。同时为了兼容部分服务端程序,UPYUN CDN还额外还提供了 CLIENT_IP 请求头的支持,其值和 X_REAL_IP 相同。所以如果站点使用UPYUN做CDN加速,可以通过HTTP_CLIENT_IP或者HTTP_ X_REAL_IP来代替原HTTP_X_FORWARDED_FOR获取访客真实IP。

以Wordpress为例,可以在Wordpress配置文件wp-config.php第一个<?php 后面加入以下代码,使Wordpress获取访客的真实IP:

  1. /*使用upyun后获取访客真实IP */
  2. /*文章地址:http://www.duoluodeyu.com/2328.html */
  3. if(isset($_SERVER['HTTP_CLIENT_IP']))
  4. {
  5. $list = explode(',',$_SERVER['HTTP_CLIENT_IP']);
  6. $_SERVER['REMOTE_ADDR'] = $list[0];
  7. }

  1. /*使用upyun后获取访客真实IP */
  2. /*文章地址:http://www.duoluodeyu.com/2328.html */
  3. if(isset($_SERVER['HTTP_X_REAL_IP']))
  4. {
  5. $list = explode(',',$_SERVER['HTTP_X_REAL_IP']);
  6. $_SERVER['REMOTE_ADDR'] = $list[0];
  7. }

延伸阅读:

使用CDN后的WordPress怎样获取访客IP

avatar
WordPress主题和插件添将支持自动更新功能 业界动态

WordPress主题和插件添将支持自动更新功能

WordPress 作为最流行的博客平台,有着丰富的扩展和主题生态系统。然而主题和扩展也经常成为 WordPress 网站的安全隐患,原因是网站管理人员在安装扩展或主题之后就不再更新。当扩展或主题发现...
WordPress 5.3.1版本发布 业界动态

WordPress 5.3.1版本发布

来自WordPress官方的消息,WordPress 5.3.1版本发布,这是一个安全更新版本,也是一个常规更新维护版本。 WordPress 5.3.1一共修复46个漏洞或者漏洞相关安全问题。 官方...
禁用又拍云CDN服务分配的测试域名 网站建设

禁用又拍云CDN服务分配的测试域名

又拍云的CDN服务开通后会默认分配一个测试域名,用于CDN服务的测试,这个域名在服务调试阶段确实能起到一定的作用,但等到CDN服务配置完成正式上线后,就会显得很鸡肋,甚至有站点镜像之嫌,影响站点SEO...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: