Red de conocimiento informático - Material del sitio web - Cómo usar php para implementar restricciones de IP

Cómo usar php para implementar restricciones de IP

error_reporting(7);

session_start();

//Enviar encabezado de caracteres

if ($headercharset)

header("Content-Type. text/html; charset=gb2312");

//Cargar archivo **** público

require_once(" config.php");

require_once("global.php");

require_once("db_mysql.php");

/**** ************* Realizar verificación del cliente para ver si el cliente puede acceder al sitio web************/

// Obtener clientes Cliente Dirección IP

if(getenv('HTTP_CLIENT_IP')){

$client_ip = getenv('HTTP_CLIENT_IP');

} elseif(getenv('HTTP_X_FORWARDED_FOR')) {

$client_ip = getenv('HTTP_X_FORWARDED_ FOR');

} elseif(getenv('REMOTE_ADDR')){

$client_ip = getenv(' REMOTE_ADDR ');

} else {

$client_ip = $HTTP_SERVER_ VARS['REMOTE_ADDR'];

}

// Explotar IP del cliente

$cip = explotar("." , $client_ip);

// Conectarse a la base de datos

$db = new DB_Sql() ;

$err = $db->connect();

//// Restringir el acceso a IP remota, PD: Este código es deslumbrante, jajaja, usa 8 si, -_ -# */

// Extrae la dirección IP de almacenamiento que se restringirá de la base de datos

$query_str = "SELECT limit_ip FROM us_limitip";

$db -> query($query_str);

// Recorre los resultados y comprueba uno por uno

mientras ($db->next_record())

{

$limit_ip = $db->f("limit_ip");

$lip = explotar("." , $limit_ip);

// Si el primer carácter de limit_ip es * o 0, salta a la página de error

if (($lip[0]=='*') || ($lip[0]== ' 0'))

header("Location:... /error.php?errid=300");

// Si la IP del cliente es igual a nuestra IP restringida IP , luego salte a la página de error

if ($client_ip==$limit_ip)

header("Location:... /error.php?errid=300");

//Si el primer conjunto de IP coincide, entonces coincida con el segundo conjunto de IP

if ($cip[0] == $lip[0])

{

p>

//// Si el segundo grupo de IP restringida es *, salte a la página de error

if ($lip[1]= = '*')

header("Ubicación:... /error.php?errid=300");

// Si la segunda IP coincide, la tercera IP coincide

if ($cip [1]==$lip[1])

{

// Si el tercer carácter restringido es *, salta a la página de error

if ( $lip[2]==' *')

header("Location:... /error.php?errid=300");

// Si el tercer conjunto de coincidencias de IP, salte al tercer conjunto de comprobaciones

if ($cip[2]==$lip[2])

{

// Si el cuarto grupo de IP restringida es * o 0, salte a la página de error

if (($lip[3]== '*') || ($lip[ 3]== '0 '))

header("Ubicación:... /error.php?errid=300");

}

}

}

}

}

// Liberar resultados de consulta de base de datos

$db->free ();

/****************** Verificación de IP completada*** **************** */ >

.