php获取客户端的真实IP的方法
发布日期:2021-05-14 19:23:59 浏览次数:16 分类:精选文章

本文共 3099 字,大约阅读时间需要 10 分钟。

PHP���������������IP���������������������������

���������������IP������������������������������������������������������IP���������������������������������������������������������������������������������PHP���������������IP������������������������������������������������������������������

###.isBlank

���������������������IP������������������������������HTTP���������������������IP���������PHP���������������������������������������������������������������������������IP���������

  • S E R V E R [ " R E M O T E A D D R " ] ���
  • _SERVER["REMOTE_ADDR"] ���
  • _SERVER["HTTP_X_FORWARDED_FOR"]

���������������������������������������������

  • ���proxy������������������������IP������������REMOTE_ADDR���������
  • ������ Transparent Proxies���X_FORWARDED_FOR������������������������IP���������������������IP������
  • ���������������������X_FORWARDED_FOR������������������IP���REMOTE_ADDR������������������IP���
  • ������������������X_FORWARDED_FOR������������
  • ������������������X_FORWARDED_FOR���������������
  • ���������������������������������������������������������������������������������

    ���������������������������������

    ���������������������������������HTTP���������������������������������

  • Transparent Proxies���

    • X_FORWARDED_FOR���������������������IP������������������������������������������IP������������������IP������������������IP������
    • REMOTE_ADDR������������������������IP���
  • Anonymous Proxies���

    • X_FORWARDED_FOR���������������������������IP���
    • REMOTE_ADDR������������������������������IP���
  • High Anonymity Proxies (Elite proxies)���

    • X_FORWARDED_FOR���������������������������
    • REMOTE_ADDR������������IP���
  • Distorting Proxies���

    • X_FORWARDED_FOR������������������IP������
    • REMOTE_ADDR������������IP���
  • lightweight optimization

    ���������������������������IP���������������������������������������IP���������

  • ���������������

    $unknown = 'unknown';
    if (empty($_SERVER['HTTP_X_FORWARDED_FOR']) || strcasecmp($_SERVER['HTTP_X_FORWARDED_FOR'], $unknown)) {
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } elseif (!empty($_SERVER['REMOTE_ADDR']) && strcasecmp($_SERVER['REMOTE_ADDR'], $unknown)) {
    $ip = $_SERVER['REMOTE_ADDR'];
    } else {
    $ip = 'unknown';
    }
  • ���������������������������������������������������IP���������

  • algorithmic approach

    ���������������������������_suspend IP handling_������������������������������

  • ���������������������

    $ip = null;
    if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && preg_match('/^\d+\.\d+\. \d+\.\d+$/', $_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } elseif (isset($_SERVER['REMOTE_ADDR']) && preg_match('/^\d+\.\d+\. \d+\.\d+$/', $_SERVER['REMOTE_ADDR'])) {
    $ip = $_server['REMOTE_ADDR'];
    } else {
    $ip = 'unknown';
    }
  • ���������IP������

    if ($ip !== null && strpos($ip, ',') !== false) {
    $ip = explode(',', $ip)[0];
    }
  • ������������������������������������������������������IP���������������

    ������������������������������������������������������������������������������IP������������������������������IP���������������������������������������������������������������������HTTP������������������������������������������IP���������������

    上一篇:Nginx屏蔽或禁止指定来源网站访问
    下一篇:PHP如何删除一个路径下的所有文件夹和文件教程

    发表评论

    最新留言

    路过,博主的博客真漂亮。。
    [***.116.15.85]2025年04月23日 23时32分12秒