php中禁止单个IP与ip段访问的代码小结

  禁止单个IP

  <?php

  //加IP访问限制

  if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {

  $userip = getenv('HTTP_CLIENT_IP');

  } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {

  $userip = getenv('HTTP_X_FORWARDED_FOR');

  } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {

  $userip = getenv('REMOTE_ADDR');

  } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {

  $userip = $_SERVER['REMOTE_ADDR'];

  }

  $banned_ip = array (

  "127.0.0.1",

  "203.0.0.1",

  "56.12.50.65",

  "192.168.1.88"

  );

  if (in_array($userip,$banned_ip))

  {

  die ("Your IP is block to connect !");

  }

  echo "管理资源吧测试";

  ?>

  禁止IP段

  

复制代码 代码如下:

  <?php

  //加IP访问限制

  if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {

  $userip = getenv('HTTP_CLIENT_IP');

  } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {

  $userip = getenv('HTTP_X_FORWARDED_FOR');

  } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {

  $userip = getenv('REMOTE_ADDR');

  } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {

  $userip = $_SERVER['REMOTE_ADDR'];

  }

  $ban_range_low=ip2long("217.0.0.0"); //ip段上

  $ban_range_up=ip2long("217.255.255.255");//ip段尾

  $ip=ip2long($userip]);

  if ($ip>$ban_range_low && $ip<$ban_range_up)

  {

  print "Banned";

  exit();

  }

  ?>