miércoles, 31 de agosto de 2011

saber quien visita tu web con solo unas lineas en php

como estan?,

hace unos días estaba revisando las visitas a mi web desde mi cta, Google Analytics, que si bien es muy completo, en cuanto a detalles estadísticos se refiere, tiene una pata floja, al menos para mi, ya que lo que busco es conocer la IP de los visitantes de mi sitio, para que? simple, para tener mayor control del tráfico, y esos datos manipularlos a mi antojo ya sea para bans, crear reglas a determinadas ips etc,

para eso cree un script, no esperen algo muuuuy completo, es sencillito pero se ajusta a mis propositos saber por que tengo tantas peticiones que sobrecargan el server en estos dias asi que ahi van las lineas del script que permiten saber la ip real del que visita el sitio y otros detalles guardandolos como texto plano en un archivito .txt separado por tuberias | para luego lo podamos abrir en un Excel por ej u Open Office para los puristas :)

lo prometido es deuda, pueden ampliarlo modificarlo sugerirme cambios etc, todo es posible, espero les sirva

<?php
error_reporting(0);//si algo sale mal que nadie vea los errores
// registra la ip original y otros datos
function getRealIpAddr() {  
        if (!empty($_SERVER['HTTP_CLIENT_IP'])) {  
              $ip=$_SERVER['HTTP_CLIENT_IP'];  
          } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {  
                  $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];  
         }else{  
                 $ip=$_SERVER['REMOTE_ADDR'];  
          }  
return $ip;  
 }  

date_default_timezone_set('America/Argentina/Buenos_Aires');//seteo para que me de la fecha de mi pais
$fecha = date("d M Y H:i:s" ) ;
$refer = $_SERVER['HTTP_REFERER'];
$consulta = $_SERVER['QUERY_STRING'];
$browser = $_SERVER['HTTP_USER_AGENT'];
$ruri = $_SERVER['REQUEST_URI'];

$fh=fopen("visitas.txt","a+" ) ;// a+ hago un append para no machacar datos
$ip=getRealIpAddr();
fputs($fh,"$fecha|$ip|$refer|$consulta|$browser|$ruri\n" ) ;
fclose($fh);

?>


    


Uso:

Este código lo pegan en el index.php de su sitio y a su vez suben un archivo vacio llamado visitas.txt una vez arriba en el servidor desde el cliente de FTP que tengan le dan permisos 755 para que solo pueda ser escrito por la aplicación,
vayan revisando cada tanto para ir purgando el archivo sino va a ser más pesado que un ladrillo
esto es experimental y lo hice para quitarme unas dudas

Yapa:
esto es rudimentario, pero sirve a la causa,
para saber el país de determinada IP van al sitio

https://ipdb.at/
extraen alguna la ip a revisar de nuestro archivo visitas.txt

lo pegan en la caja de búsqueda de esta web, y nos va a dar detalles adicionales a dicha ip

hasta la próxima
Reacciones:

0 comentarios: