Articulos/Guias

Recursos

Patrocinadores
Patrocinador

Capturar la IP real del visitante

Añadido el 07/03/2005

En numerosas ocasiones nos vemos obligados a identificar a nuestros usuarios mediante su dirección IP.

¿En que casos podemos necesitar este dato?

Se nos pueden presentar numerosas situaciones en las que podemos necesitar esta información, por ejemplo, para identificar el país de procedencia del usuario, información muy util para segmentar publicidad por paises. Tambien es util para evitar el spam al que se ven sometidos nuestros webs. Por ejemplo (un caso que conocemos), disponeis de un directorio, y os añaden webs spam sin parar. En este caso podeis identificar al causante de dicha acción mediante su IP, bloqueandole el acceso a dicha IP a vuestro web... como veis existen muchas aplicaciones.

Para capturar la ip de un visitante PHP, dispone de una función muy sencilla: <? $realip = $_SERVER<"REMOTE_ADDR">; ?> Pero este dato puede verse modificado por la utilización de proxys que enmascaran la verdadera ip del usuario, y se nos puede engañar. Para evitar esto, vamos a capturar la ip verdadera del usuario: <? if ($_SERVER) { if ( $_SERVER<HTTP_X_FORWARDED_FOR> ) { $realip = $_SERVER<"HTTP_X_FORWARDED_FOR">; } elseif ( $_SERVER<"HTTP_CLIENT_IP"> ) { $realip = $_SERVER<"HTTP_CLIENT_IP">; } else { $realip = $_SERVER<"REMOTE_ADDR">; } } else { if ( getenv( "HTTP_X_FORWARDED_FOR" ) ) { $realip = getenv( "HTTP_X_FORWARDED_FOR" ); } elseif ( getenv( "HTTP_CLIENT_IP" ) ) { $realip = getenv( "HTTP_CLIENT_IP" ); } else { $realip = getenv( "REMOTE_ADDR" ); } } ?> Ahora para ver la ip de nuestro visitante solo tendremos que imprimir la variable $realip: <? print $realip; ?>

Navegalis.com © 2003-2008 - Legal