|
En múltiples ocasiones cuando un visitante intenta
acceder a una página de nuestro sitio se muestra una página
de Error 404 estándar, que genera el navegador web.
Esto se debe a que la página solicitada no existe. Podemos
elaborar una página de error personalizada y, además,
recibir un mensaje de correo cada vez que se accede a ella.
De esta forma otorgamos un estilo profesional a nuestro
sitio y, después de analizar el correo, también podemos buscar el
motivo del error y tratar de corregirlo.
Para la elaboración y utilización de esta página es
obligatorio tener instalado y habilitado en nuestro servidor
el lenguaje PHP. La página tendría la estructura siguiente:
| Código: |
<?php
$envioMail = "si"; // Debe ser "si" para que el
correo sea enviado
$direccionEmail = "nombre@dominio.com"; // Tu
dirección de correo
putenv('TZ=Europe/Madrid'); // Establece el
valor de tu zona horaria
// change nothing below this line
if ($envioMail == "si") {
$mensaje = "Fecha y hora del error: " . date(" d
F h:ia") . "\n\n";
$mensaje .= "Navegador: " . $_SERVER['HTTP_USER_AGENT']
. "\n\n";
$mensaje .= "Página solicitada: " . $_SERVER['HTTP_HOST']
. $_SERVER['REQUEST_URI'] . "\n\n";
$mensaje .= "Página de procedencia: " .
$_SERVER['HTTP_REFERER'] . "\n\n";
mail($direccionEmail, "Error 404" , $mensaje, "From:
Web");
}
header("HTTP/1.0 404 Not Found");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0
Transitional//EN">
<html>
<head>
<title>Error 404 - Página no encontrada?</title>
</head>
<body>
<div align="center">
<table border="0" cellpadding="0" style="border-collapse:
collapse" width="70%" id="table1" height="100%">
<tr>
<td>
<h1 align="center">Error 404</h1>
<p align="left">El documento o página que has
solicitado (<?=$_SERVER['HTTP_HOST']?><?=$_SERVER['REQUEST_URI']?>)no
se puede localizar en estos momentos dentro de
nuestro sitio por alguno de los
motivos siguientes:</p>
<ul>
<li>El documento ha cambiado de ubicación de
forma
permanente.</li>
<li>El documento no está accesible en la
dirección
especificada.</li>
<li>El servidor no ha encontrado el documento
solicitado.</li>
</ul>
<p align="left">Pulsando <a href="javascript:history.go(-1)">aquí</a>
podrás volver a la página de la que
procedes.</p>
</td>
</tr>
</table>
</div>
</body>
</html> |
La parte superior, la que corresponde al
código PHP, recopila los datos que serán enviados en un
mensaje a la dirección de correo que hayas especificado
(recuerda que debes ponerla en $direccionEmail).
(Si no quieres recibir el mensaje de correo, sólo tienes
que darle a la variable $envioMail cualquier
valor distinto de si, por ejemplo, no).
La estructura del código HTML la puedes cambiar y
adaptarla a tus preferencias. Guarda el documento creado
con el nombre error404.php dentro de una carpeta
(directorio) de nombre errores.
En el archivo
.htaccess tendrás
que añadir la línea siguiente:
| Código: |
|
ErrorDocument 404 /errores/error404.php |
De esta forma, cada vez que se produce
un error 404, el navegador abrirá la página error404.php
y, también, el servidor nos enviará un correo
informándonos del fallo.
|