<?php

    echo '前端机IP:'.$_SERVER['REMOTE_ADDR'];
    echo '<br />';
    echo '后端机IP:'.$_SERVER['SERVER_ADDR'];
    echo '<br />';
    echo '客户机IP:'.$_SERVER['HTTP_X_FORWARDED_FOR'];
    echo '<br />';
    echo '代理端IP:'.$_SERVER['HTTP_CLIENT_IP'];
    echo '<br />';
    echo '代理IP:'.$_SERVER['HTTP_X_FORWARDER_FOR'];
    echo '<br />';

?>

二、

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2017/4/3
 * Time: 14:26
 */
function _getIp()
{
    if ($ip = getenv('HTTP_CLIENT_IP'))
        ;
    elseif ($ip = getenv('HTTP_X_FORWARDED_FOR'))
        ;
    elseif ($ip = getenv('HTTP_X_FORWARDED'))
        ;
    elseif ($ip = getenv('HTTP_FORWARDED_FOR'))
        ;
    elseif ($ip = getenv('HTTP_FORWARDED'))
        ;
    else
        $ip = $_SERVER['REMOTE_ADDR'];

    if (strpos($ip, ",") !== FALSE) {
        return substr($ip, 0, strpos($ip, ","));
    }
    return $ip;
}
// 判断网段
$ip = _getIp();
$net_seg = substr($ip, 0, strrpos($ip, '.'));
$legalIP = [];
if (isset($legalIP) && !in_array($net_seg, $legalIP) ) {
    echo '/error/no-access:'.$ip;
    exit();
}
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. 【THUSC2017】【LOJ2979】换桌 线段树 网络流

    题目大意 有 \(n\) 个圆形的桌子排成一排,每个桌子有 \(m\) 个座位. 最开始每个位置上都有一个人.现在每个人都要重新选择一个座位,第 \(i\) 桌的第 \(j\) 个人的新座位只能在第 ...

  2. EditTextUtil 监听输入字数

    package com.toge.ta.utils; import android.text.Editable;import android.text.Selection;import android ...

  3. BackGround

  4. VBScript 学习笔记

    创建一个变量 VBScript 变量名称的规则: 必须以字母开头 不能包含点号(.) 不能超过 255 个字符 在 VBScript 的缩写中,所有的变量都与类型 variant 相关,可存储不同类型 ...

  5. (八)控件介绍,QLable

    Radio单选框 默认互斥,加GroupBox进行分组可以解决这个 checkBox复选 ListWidget TableWIdget:有表头 #include "widget.h" ...

  6. 初探VUX(基本官网上无特别无干货)

    vux@2.x 推荐webpack+vue-loader方式的开发. 第一步安装cli依赖 npm install vue-cli -g 接下来创建项目注意名称是小写 cd projectPath y ...

  7. 爬虫综合大作业——网易云音乐爬虫 & 数据可视化分析

    作业要求来自于https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3075 爬虫综合大作业 选择一个热点或者你感兴趣的主题. 选择爬取的对象 ...

  8. SOA 和 微服务

    正在读 钟华 著的<<企业IT架构转型之道 - 阿里巴巴中台战略思想与架构实战>> 一书, 参考了网上的讨论,  对SOA和微服务有了一些新的认识. 知乎上的讨论: SOA 与 ...

  9. 自定义 ThreadPoolExecutor 处理线程运行时异常

    自定义 ThreadPoolExecutor 处理线程运行时异常 最近看完了ElasticSearch线程池模块的源码,感触颇深,然后也自不量力地借鉴ES的 EsThreadPoolExecutor ...

  10. IPv6 RIPng (PT)

    在Cisco路由器上配置RIPng  一.拓扑图 二.地址表 Device Interface IPv6 Address R1 F 0/0 2001:0DB8:CAFE:0001::1/64 S 0/ ...