• 您当前位置:网站首页 >> PHP学习 >> 使用华为云CDN如何读取真实访客IP
  • 使用华为云CDN如何读取真实访客IP

    iCoA首席特工 逍遥峡谷 发布:2018-11-24 更新:2018-11-24 浏览0条评论
    内容简介

    相关关键词:华为云   CDN   真实IP  

    本文链接:https://www.icoa.cn/a/857.html

    本站文章如非注明皆为原创,未经允许禁止转载。如有问题可以给我留言或发邮件。

    网站经常会需要读取访客的IP,但是使用CDN或者WAF之后,你使用 REMOTE_ADDR 读取到的IP地址其实是CDN节点的IP,不是访客真实的IP。

    那么如何才能读取访客真实的IP呢?前段时间试用了华为云的CDN之后就遇到了这个问题。

    经过测试,发现华为云的CDN可以使用 HTTP_CDN_SRC_IP  来读取访客的真实IP。

    PHP Code

    $ip = $_SERVER['HTTP_CDN_SRC_IP'])

    ASP Code

    ip = Request.ServerVariables("HTTP_CDN_SRC_IP")

    这样之后就能用 $ip 或 ip 来使用真实IP了。

    但是还有一个问题,我们不用CDN的时候,又需要修改代码来使用 REMOTE_ADDR 读取访客IP,非常麻烦。

    所以我们可以将代码进行修改,让我们无论在什么情况下,读取的都是真实的访客IP。

    先看代码:

    PHP Code

    if (isset($_SERVER['HTTP_CDN_SRC_IP'])){
    //判断CDN IP是否存在,如果存在
        $IP = $_SERVER['HTTP_CDN_SRC_IP'];
    }
    else {
    //如果CDN IP不存在,则
        $IP = $_SERVER['REMOTE_ADDR'];
    }

    ASP Code

    if Request.ServerVariables("HTTP_CDN_SRC_IP")<>"" then
    '判断CDN IP不为空
        ip = Request.ServerVariables("HTTP_CDN_SRC_IP")
    else
        ip = Request.ServerVariables("REMOTE_ADDR")
    end if

    是不是很简单,后续可以使用 $ip 和 ip 变量来调用真实IP了。

    本文链接:https://www.icoa.cn/a/857.html
    关键词: 华为云   CDN   真实IP  


    如果您愿意支持本站,欢迎点击打赏哦~



    下一篇:早期版本升级PHP 7.4.5 之后出现500错误的原因和解决办法

    上一篇:PHP CGI 进程占用CPU过高导致CPU使用达到100%的另类原因


    - 相关文章 -


    常见编程语言中的注释符号和格式 - 2017-12-19

    Windows 2016 & Windows 10 中IIS安装和配置PHP的步骤 - 2017-12-19

    PHP隐藏IP地址末位的方法 - 2017-12-11

    GB2312网页调用或引入UTF-8编码的JS显示乱码的解决方法 - 2017-12-08

    20款国外PHP免费开源CRM软件推荐 - 2017-08-21

    PHP 判断是否包含某个字符串的方法和案例 - 2017-05-23

    PHP String 函数有哪些,PHP字符串函数大全 - 2017-05-23

    FreeBSD常用命令详解与使用手册 - 2016-12-13


    - 文章评论 -




    3311

    [由于政策原因,您的留言如果提交成功后,需要审核才能展示,请改天再来查看,请不要重复提交,谢谢支持!]

    - 最新评论[0条评论] -


    [>>>点击查看更多评论]

    版权所有©逍遥峡谷 - 星际中心超自然局 · 地球总部 | 逍遥峡谷 · 酷品优选
    Copyright©Interstellar Central Occult Agency (I.C.O.A)
    本局纯属虚构,如有雷同,纯属巧合

    冀公网安备13011102001055号 · 冀ICP备06033848号