1. <?php
  2.  
  3. echo '前端机IP:'.$_SERVER['REMOTE_ADDR'];
  4. echo '<br />';
  5. echo '后端机IP:'.$_SERVER['SERVER_ADDR'];
  6. echo '<br />';
  7. echo '客户机IP:'.$_SERVER['HTTP_X_FORWARDED_FOR'];
  8. echo '<br />';
  9. echo '代理端IP:'.$_SERVER['HTTP_CLIENT_IP'];
  10. echo '<br />';
  11. echo '代理IP:'.$_SERVER['HTTP_X_FORWARDER_FOR'];
  12. echo '<br />';
  13.  
  14. ?>

二、

  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2017/4/3
  6. * Time: 14:26
  7. */
  8. function _getIp()
  9. {
  10. if ($ip = getenv('HTTP_CLIENT_IP'))
  11. ;
  12. elseif ($ip = getenv('HTTP_X_FORWARDED_FOR'))
  13. ;
  14. elseif ($ip = getenv('HTTP_X_FORWARDED'))
  15. ;
  16. elseif ($ip = getenv('HTTP_FORWARDED_FOR'))
  17. ;
  18. elseif ($ip = getenv('HTTP_FORWARDED'))
  19. ;
  20. else
  21. $ip = $_SERVER['REMOTE_ADDR'];
  22.  
  23. if (strpos($ip, ",") !== FALSE) {
  24. return substr($ip, 0, strpos($ip, ","));
  25. }
  26. return $ip;
  27. }
  28. // 判断网段
  29. $ip = _getIp();
  30. $net_seg = substr($ip, 0, strrpos($ip, '.'));
  31. $legalIP = [];
  32. if (isset($legalIP) && !in_array($net_seg, $legalIP) ) {
  33. echo '/error/no-access:'.$ip;
  34. exit();
  35. }
  36. echo "success:".$ip;

PHP获取服务器IP和客户端IP的更多相关文章

  1. 面试题目: 获取服务器IP和客户端IP

    [面试题目] 怎么获取服务器IP和客户端IP地址? I. PHP获取客户端IP, 可通过下面系统变量 1. $_SERVER['Remote_Addr'] 2. $_SERVER['HTTP_CLIE ...

  2. 获取访问用户的客户端IP(适用于公网与局域网).

     /**   * 获取访问用户的客户端IP(适用于公网与局域网).   */   public final String getIpAddr(final HttpServletRequest requ ...

  3. C#中获取服务器IP,客户端IP以及网卡物理地址

    客户端ip: Request.ServerVariables.Get("Remote_Addr").ToString(); 客户端主机名: Request.ServerVariab ...

  4. c#中获取服务器IP,客户端IP以及Request.ServerVariables详细说明

    客户端ip: Request.ServerVariables.Get("Remote_Addr").ToString();  客户端主机名: Request.ServerVaria ...

  5. c#中获取服务器IP,客户端IP以及其它

    客户端ip:Request.ServerVariables.Get("Remote_Addr").ToString();客户端主机名:Request.ServerVariables ...

  6. C# 之 获取服务器IP,客户端IP以及其它

    1.获取客户端IP:Request.ServerVariables.Get("Remote_Addr").ToString(); 2.获取客户端主机名:Request.Server ...

  7. 获取服务器IP,客户端IP

    客户端IP相关的变量 1. $_SERVER['REMOTE_ADDR']; 客户端IP,有可能是用户的IP,也有可能是代理的IP. 2. $_SERVER['HTTP_CLIENT_IP']; 代理 ...

  8. Java获取服务器IP和客户端IP

    服务器IP: String addr = InetAddress.getLocalHost().getHostAddress(); 说明:很明显上面是没考虑到服务器有多个iP的情况. 客户顿啊IP: ...

  9. C# 取得内网IP、外网IP、客户端IP方法

    前言 在 Windows Form Application 里对于取得 IP Address 有内网.外网两种 IP Address ,如果只需要取得内网 IP Address ,可以透过使用 IPH ...

随机推荐

  1. Oracle查询所有表的字段明细

    SELECT USER_TAB_COLS.TABLE_NAME as 表名, UTC.COMMENTS as 表中文名, USER_TAB_COLS.COLUMN_ID as 列序号, USER_TA ...

  2. Oracle数据库启动出现ORA-27101错误之ORA-19815处理方式及数据备份

    ORA-27101: sharedmemory realm does not exist之ORA-19815处理 重启数据库(数据库:muphy),登陆是越到错误: ORA-27101: shared ...

  3. Linux-网络管理

    网络管理 一 基本网络配置 linux操作系统,以太网卡用“eth”表示网卡:序号从零开始eth0代表到系统能够识别的第一个网卡eth1....第2个网卡 查看网卡信息 查看网卡信息 查看当前系统所连 ...

  4. python学习day20 面向对象(二)类成员&成员修饰符

    1.成员 类成员 类变量 绑定方法 类方法 静态方法 属性 实例成员(对象) 实例变量 1.1实例变量 类实例化后的对象内部的变量 1.2类变量 类中的变量,写在类的下一级和方法同一级. 访问方法: ...

  5. Vue针对性笔记

    Github原文阅读 MVVM(Model-View-ViewModel)模型 MVVM分为Model.View.ViewModel三部分. Model代表数据模型,定义数据和业务逻辑,访问数据层 V ...

  6. vue+axios实现文件下载

    功能:点击导出按钮,提交请求,下载excel文件: 第一步:跟后端童鞋确认交付的接口的response header设置了 axios({ method: 'post', url: 'api/user ...

  7. .NET常用开发框架汇总

    分布式缓存框架:Microsoft Velocity:微软自家分布式缓存服务框架.Memcahed:一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度.Redis:是一个高性能的KV数据 ...

  8. Java基础--二维数组

    1.二维数组的定义 二维数组表示行列二维结构,在栈空间中的二维数组的地址指向堆空间中的一维数组,堆空间中的一维数组的地址又指向一维数组所在的内存空间. 2.二维数组的声明 二维数组声明有3种方式,推荐 ...

  9. Linux_解决启动网卡失败 Device eth0 does not seem to be present

    Linux_解决启动网卡失败  Device eth0 does not seem to be present 虚拟机克隆  发现service network restart 启动失败 故障现象: ...

  10. css sprites 图标合并工具网站

    https://www.toptal.com/developers/css/sprite-generator