php判断访问IP的方法

本文实例讲述了php判断访问IP的方法。分享给大家供大家参考。具体如下:

<?php
function getIP() {
  if (! empty ( $_SERVER ["HTTP_CLIENT_IP"] )) {
    $cip = $_SERVER ["HTTP_CLIENT_IP"];
  } else if (! empty ( $_SERVER ["HTTP_X_FORWARDED_FOR"] )) {
    $cip = $_SERVER ["HTTP_X_FORWARDED_FOR"];
  } else if (! empty ( $_SERVER ["REMOTE_ADDR"] )) {
    $cip = $_SERVER ["REMOTE_ADDR"];
  } else {
    $cip = '';
  }
  preg_match ( "/[\d\.]{7,15}/", $cip, $cips );
  $cip = isset ( $cips [0] ) ? $cips [0] : 'unknown';
  unset ( $cips );
  return $cip;
}
?>

希望本文所述对大家的php程序设计有所帮助。

(0)

相关推荐

  • php实现ip白名单黑名单功能

    这个是一个检测ip是否非法的php函数,适应于白名单,黑名单功能开发,主要场景应用于:api来源限制,访问限制等. 复制代码 代码如下: /**  * 安全IP检测,支持IP段检测  * @param string $ip 要检测的IP  * @param string|array $ips  白名单IP或者黑名单IP  * @return boolean true 在白名单或者黑名单中,否则不在  */ function is_safe_ip($ip="",$ips="&q

  • PHP获取ip对应地区和使用网络类型的方法

    本文实例讲述了PHP获取ip对应地区和使用网络类型的方法.分享给大家供大家参考.具体分析如下: 这里测试的时候因为ip168网站禁止,所以试着在原有代码上修改为ip138数据库的数据调用,代码如下: <?php //原程序有问题,现修改为ip138数据库 /** * 获取IP地区 * Enter description here ... * @param unknown_type $ip */ function GetArea($ip){ $url = "http://www.ip138.

  • php获取访问者IP地址汇总

    //方法1: $ip = $_SERVER["REMOTE_ADDR"]; echo $ip; //方法2: 复制代码 代码如下: $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($user_IP) ? $user_IP : $_SERVER["REM

  • php限制ip地址范围的方法

    本文实例讲述了php限制ip地址范围的方法.分享给大家供大家参考.具体如下: 只有在限定范围内的ip地址才能访问 function get_real_ipaddress() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { return $_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { return $_SERVER['HTTP_X_FORWAR

  • php简单实现屏蔽指定ip段用户的访问

    这段时间在统计工具里面总是看到一些未知浏览器.未知操作系统的用户的频繁请求而且ip都在一个段里面,使我产生了一些疑问,这些用户算是有效用户吗.网站访问没有浏览器没有操作系统的记录,我经过几天的分析确认这些访问不是人在访问而是一些机器或者是别人在采集我的站内的东西,萌生了一种屏蔽这个ip的想法. 把统计里面的没有浏览器记录的用户数据导出来看了下屏蔽ip已经不现实了ip不少一百多个,但是仔细观看不难看出这些ip都集中在某些ip断内.想个办法屏蔽整个ip段的用户,也许会造成一些误杀但是能确保网站流量是

  • php实现根据IP地址获取其所在省市的方法

    根据现有IP地址获取其地理位置(省份,城市等)的方法 function GetIpLookup($ip = ''){ if(empty($ip)){ return '请输入IP地址'; } $res = @file_get_contents('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=' . $ip); if(empty($res)){ return false; } $jsonMatches = array(

  • PHP实现获取客户端IP并获取IP信息

    代码很简洁,功能很实用,这里就不多废话了,直接奉上: 复制代码 代码如下: <?php /**  * 获取客户端IP  * @param  integer $type 返回类型 0:string,1:long  * @return string|long  */ function getClientIp($type = 0) {     $ip = NULL;     if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {         $arr = ex

  • PHP判断IP并转跳到相应城市分站的方法

    本文实例讲述了PHP判断IP并转跳到相应城市分站的方法.分享给大家供大家参考.具体实现方法如下: <?php class QQWry{ var $StartIP=0; var $EndIP=0; var $Country=''; var $Local=''; var $CountryFlag=0; // 标识 Country位置 // 0x01,随后3字节为Country偏移,没有Local // 0x02,随后3字节为Country偏移,接着是Local // 其他,Country,Local

  • PHP curl伪造IP地址和header信息代码实例

    curl虽然功能强大,但是只能伪造$_SERVER["HTTP_X_FORWARDED_FOR"],对于大多数IP地址检测程序来说,$_SERVER["REMOTE_ADDR"]很难被伪造: 首先是client.php的代码 复制代码 代码如下: $headers['CLIENT-IP'] = '202.103.229.40';  $headers['X-FORWARDED-FOR'] = '202.103.229.40';   $headerArr = array

  • php判断访问IP的方法

    本文实例讲述了php判断访问IP的方法.分享给大家供大家参考.具体如下: <?php function getIP() { if (! empty ( $_SERVER ["HTTP_CLIENT_IP"] )) { $cip = $_SERVER ["HTTP_CLIENT_IP"]; } else if (! empty ( $_SERVER ["HTTP_X_FORWARDED_FOR"] )) { $cip = $_SERVER [

  • 简单实现限定phpmyadmin访问ip的方法

    修改:config.inc.php 在第一行加入 $ip_prefix = '192.168.121.'; if (substr($_SERVER['REMOTE_ADDR'], 0, strlen($ip_prefix)) != $ip_prefix ) die('illegal access error'); ip可以设置成你自己电脑的ip.如果是内网建议直接设置成自己的ip地址取代ip地址段.这样的话可以防止其它用户在内网中访问.如果是公网ip限制,直接使用即可. 只是简单的限定,没有太大

  • Java判断IP地址为内网IP还是公网IP的方法

    本文实例讲述了Java判断IP地址为内网IP还是公网IP的方法.分享给大家供大家参考.具体分析如下: tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8:10.0.0.0-10.255.255.255 172.16.0.0/12:172.16.0.0-172.31.255.255 192.168.0.0/16:192.168.0.0-192.168.255.255 那么,直接上代码吧: 复制代码 代码如下: public static boolea

  • C#判断访问来源是否为搜索引擎链接的方法

    本文实例讲述了C#判断访问来源是否为搜索引擎链接的方法.分享给大家供大家参考.具体分析如下: 这段代码通过获取UrlReferrer判断访客是否来自常用的搜索引擎,不是完全准确,可做参考 /// 判断是否来自搜索引擎链接 /// 是否来自搜索引擎链接 public static bool IsSearchEnginesGet() { if (HttpContext.Current.Request.UrlReferrer == null) { return false; } string[] Se

  • PHP获取用户访问IP地址的5种方法

    本文实例为大家分享了5种PHP获取用户访问IP地址的方法,供大家参考,具体内容如下 <?php //方法1: $ip = $_SERVER["REMOTE_ADDR"]; echo $ip; //方法2: $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($

  • python统计日志ip访问数的方法

    本文实例讲述了python统计日志ip访问数的方法.分享给大家供大家参考.具体如下: import re f=open("/tmp/a.log","r") arr={} lines = f.readlines() for line in lines: ipaddress=re.compile(r'^#(((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?))') match=ipaddres

  • php实现判断访问来路是否为搜索引擎机器人的方法

    本文实例讲述了php实现判断访问来路是否为搜索引擎机器人的方法.分享给大家供大家参考.具体分析如下: 很多时候我们需要对网站访客来路进行识别,针对真实用户与搜索引擎作不同动作实现,那么首先就需要判断是否为搜索引擎. php判断方法非常简单,通过过滤$_SERVER['HTTP_USER_AGENT'] 参数即可进行识别,以下是摘录某开源程序的相关源码: private function getRobot() { if (empty($_SERVER['HTTP_USER_AGENT'])) {

  • C#判断给定IP地址是否在指定范围内的方法

    本文实例讲述了C#判断给定IP地址是否在指定范围内的方法.分享给大家供大家参考.具体分析如下: 比如给定一个ip段:127.0.0.1 ~ 127.0.0.255,我们想判断一个给定的ip地址是否在此段内,可以先将ip地址转换成整数,然后整数比较大小就很容易了. 例如: 127.0.0.1 = 2130706433 127.0.0.255 = 2130706687 判断: 127.0.1.253 = 2130706941 是否在此范围内,直接比较整数大小即可 将ip地址转换成整数: public

  • php 使用curl模拟ip和来源进行访问的实现方法

    对于限制了ip和来源的网站,使用正常的访问方式是无法访问的.本文将介绍一种方法,使用php的curl类实现模拟ip和来源,访问那些限制了ip和来源的网站. 1.设置页面限制ip和来源访问 server.php <?php $client_ip = getip(); $referer = getreferer(); $allow_ip = '192.168.1.100'; $allow_referer = 'http://www.jb51.net'; if($client_ip==$allow_i

  • webpack本地开发环境无法用IP访问的解决方法

    问题描述: 只能用http://localhost:8080访问项目,不能用http://本机IP:8080访问 解决方案: webpack dev配置文件中加上 host:'0.0.0.0' 以上这篇webpack本地开发环境无法用IP访问的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: 解决webpack无法通过IP地址访问localhost的问题

随机推荐