Muchos webmaster no le ponen mucha atención a esto, pero es muy importante.
En mi opinión un Error 404 (Error de que no encontró el archivo y/o pagina) no debe de ser una “calle sin salida” si no que un punto de partida para que el usuario no se pierda en nuestro sitio web.
Esto lo podemos corregir agregando una linea en nuestra configuración de apache, les adjunto una configuración típica de apache:
NameVirtualhost 10.10.10.1
<VirtualHost 10.10.10.1>
ServerName test232.hola.com
DocumentRoot /home/sites/hola
DirectoryIndex index.php index.htm index.html
ServerAlias test1.hola.com
</VirtualHost>
A esta configuración le vamos a agregar la siguiente linea, y va a quedar de la siguiente manera:
NameVirtualhost 10.10.10.1
<VirtualHost 10.10.10.1>
ServerName test232.hola.com
DocumentRoot /home/sites/hola
DirectoryIndex index.php index.htm index.html
ServerAlias test1.hola.com
ErrorDocument 404 /404.html
</VirtualHost>
Con esta configuración, cuando alguien entre a una pagina que no existe dentro de nuestro sitio, lo va a llevar a la pagina 404.html en nuestro directorio raíz de nuestra pagina web.
El archivo 404.html puede tener un campo de búsqueda, o un listado de las categorías o incluso un resumen de las paginas mas vistas de su sitio, todo esto depende del webmaster.
Yo como lo he manejado es que pongo un mensaje que dice que el archivo no fue encontrado pero que le sugerimos estas paginas, y pongo hipervinculos a otras paginas dentro de mi sitio.