Sencillo, fácil, indoloro. Y su marido dejará de roncar. Mejore su salud con .htaccess

Este post resultará probablemente muy obvio (¿demasiado?) para la mayoría de nuestros lectores, pero podría ayudar a alguien desesperado en su búsqueda de Google (¿quién no ha buscado algo así, aunque sea en la prehistoria?). Llamémosle, por ejemplo, José Bernardo (J.B. para los amigos).

JB tiene una web alojada en un hosting Linux/PHP/MySQL, no tiene mucha idea de esto (se ha bajado el Dreamweaver del eMule, eso sí), y sólo quiere saber si puede (por ejemplo), controlar sus errores 404 de su aplicación Web alojada en un Apache, de forma que le vayan a una página específica. O al index de su web… Y decimos que quiere controlar los errores de SU aplicación, y no de todas. Él no quiere (ni puede, ni sabe) tocar el httpd.conf , sino quiere gestionar esto sólamente en su aplicación.

Por supuesto que puede, direis todos. Pues si lo habéis dicho, a otra cosa mariposa, este post no se ha escrito para vosotros 😉

Para los que no, o no se acuerden porque se dediquen al honroso y honrado mundo del Java EE, la respuesta es .htaccess.

J.B. colocará en el raíz de su aplicación un fichero llamado .htaccess, y dentro escribirá:

ErrorDocument 404 /errores/404.php

Y nada más que eso. Sin ni siquiera tener que reiniciar el Apache, toda petición a una URL inexistente (que el Apache decide responder con un error HTTP 404), será redirigidas a la URL indicada (esperemos que esa página sí que exista). Podríamos explicarle a JB que en ese fichero podrá desplegar configuraciones específicas de configuración de su servidor Web incluso a nivel de directorio.

Si además J.B. piensa que un usuario que trate de llegar a una URL no existente merece ser redirigido sin piedad al index de su aplicación, y no quiere trabajar mucho, podría (por ejemplo) indicar en el contenido de su página 404.php algo tan sencillo como:

<?php
header("Location: http://su-dominio/index.php");
exit();
?>

Y conseguiría el objetivo deseado de una forma rápida e indolora.