Foros del Web » Programando para Internet » PHP »

Error 404 con PHP ¿Saber que pagina fallo?

Estas en el tema de Error 404 con PHP ¿Saber que pagina fallo? en el foro de PHP en Foros del Web. Hola a todos Se me ocurrio que seria bueno configurar el archivo .htaccess para que cuando ocurriera un error 404 se direccionara a un PHP ...
  #1 (permalink)  
Antiguo 19/03/2009, 11:14
 
Fecha de Ingreso: septiembre-2008
Mensajes: 19
Antigüedad: 15 años, 7 meses
Puntos: 0
Error 404 con PHP ¿Saber que pagina fallo?

Hola a todos

Se me ocurrio que seria bueno configurar el archivo .htaccess para que cuando ocurriera un error 404 se direccionara a un PHP que me envia una notificacion a mi correo y funciona bien, pero

¿es posible saber que vinculo fue el que ocasiono el error?

Estaba pensando algo asi como el history de java:

javascript:history.go(-1);

¿Alguien sabe como puedo hacerlo y si es posible?

Por cierto a los pocos minutos que subi el archivo, me llego una notificacion de un usuario real, por lo que me seria de gran utilidad saber que vinculo fallo.

Envio el codigo por si alguien lo quiere usar:
Código:
          <?PHP
   
   $ip = $_SERVER['REMOTE_ADDR'];
   
   $header = 'From: ' . $mail. " \r\n";
   $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
   $header .= "Mime-Version: 1.0 \r\n";
   
   $mensaje .="Enviado el: " . date('d/m/Y', time());
   
    $mensaje .= "IP:\r\n " .$ip."\r\n\r\n";
   
   $para ='correo_electronico';
	
	$asunto = 'Error 404';
   
/*Send the email*/
	mail($para, $asunto, $mensaje, $header);
?>
  #2 (permalink)  
Antiguo 19/03/2009, 11:21
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años
Puntos: 7
Respuesta: Error 404 con PHP ¿Saber que pagina fallo?

no se si realmente sirva, pero que hay de $_SERVER['HTTP_REFERER'], ¿servira de algo ?
__________________
Me junto con los que Saben, Queriendo Saber.
  #3 (permalink)  
Antiguo 19/03/2009, 11:26
 
Fecha de Ingreso: septiembre-2008
Mensajes: 19
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Error 404 con PHP ¿Saber que pagina fallo?

Hola ACX_POISON:

En mi caso si me sirve $_SERVER['HTTP_REFERER']

Ya que obtuve la ip y supe que el usuario es de Francia(Al menos su IP pública), y como mi pagina tiene tres idiomas (Español, Frances e Inglés), me da una idea de que probablemente el vinculo roto este en la pagina de francés.

Saludos
  #4 (permalink)  
Antiguo 20/03/2009, 01:19
 
Fecha de Ingreso: septiembre-2008
Mensajes: 19
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Error 404 con PHP ¿Saber que pagina fallo?

Ya encontre la solución aunque no funciona siempre ya que por lo que he encontrado en la red, el funcionamiento de $HTTP_SERVER_VARS['HTTP_REFERER']; depende de cada servidor, si devuelve el valor o no, por cuestiones de seguridad.

Aqui les dejo el código por si a alguien le interesa:

Lo que tiene que hacer es configurar para que en caso de no encontrar un archivo el servidor diriga al usuario a una pagina 404.php, en donde se inserta este código.

Código:
  <?PHP
   
   $ip = $_SERVER['REMOTE_ADDR'];
   
   $referer = $HTTP_SERVER_VARS['HTTP_REFERER'];
   
   $header = 'From: ' . $mail. " \r\n";
	$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
	$header .= "Mime-Version: 1.0 \r\n";
   
	$mensaje .="Enviado el: " . date('d/m/Y', time())"\r\n\r\n";
	
	$mensaje .= "Vinculo roto:\r\n " .$referer."\r\n\r\n";
   
    $mensaje .= "IP:\r\n " .$ip."\r\n\r\n";
   
	$para ='tu correo';
	
	$asunto = 'Error 404';
   
/*Send the email*/
	mail($para, $asunto, $mensaje, $header);
?>
Ojala les sea de utilidad.

En mi caso me ayudo mucho ya que en 24 horas recibi cerca de 30 notificaciones de error 404 y al revisar encontre que los vinculos rotos no estaban en mi sitio actual, si no en el sitio anterior, que aun estaba en el servidor y se podia accesar atraves de los buscadores que aun tenian indexada la página anterior.
  #5 (permalink)  
Antiguo 20/03/2009, 09:37
 
Fecha de Ingreso: febrero-2009
Ubicación: cancun!
Mensajes: 898
Antigüedad: 15 años, 2 meses
Puntos: 15
Respuesta: Error 404 con PHP ¿Saber que pagina fallo?

oye muy bueno gracias :D
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 03:49.