Causas posibles

  • 01. Problema
  • 02. Causas posibles
  • 03. Cómo comprobarlo
  • 04. Soluciones
  • 05. Prevención
  • La URL solicitada tiene un error de escritura o el recurso nunca existió en esa ruta.
  • El archivo fue movido, renombrado o eliminado.
  • El DocumentRoot del virtual host apunta a una carpeta incorrecta.
  • Faltan reglas de reescritura de URLs (por ejemplo para aplicaciones con rutas "amigables").

Cómo comprobarlo

  1. Confirma la ruta exacta del archivo esperado en el servidor: ls -l /var/www/mi-sitio/ruta.
  2. Revisa qué DocumentRoot tiene configurado el virtual host que atiende esa petición.
  3. Si la aplicación usa URLs amigables, comprueba que el módulo de reescritura está activo: sudo a2enmod rewrite en Apache.
  4. Consulta el log de acceso para ver la ruta exacta que está pidiendo el navegador.

Soluciones

1. Corregir el DocumentRoot

<VirtualHost *:80>
    DocumentRoot /var/www/mi-sitio
</VirtualHost>
sudo systemctl reload apache2

2. Activar reescritura de URLs (Apache)

sudo a2enmod rewrite
sudo systemctl restart apache2

Y asegúrate de que AllowOverride All está activo en el <Directory> correspondiente si usas archivos .htaccess.

3. Configurar una página 404 personalizada

ErrorDocument 404 /404.html

Prevención

  • Revisa los enlaces internos del sitio periódicamente, especialmente tras reestructurar contenido.
  • Si cambias la URL de una página existente, añade una redirección 301 en vez de dejar la URL antigua como 404.
  • Mantén sincronizados los cambios de rutas entre el código de la aplicación y la configuración del servidor.

Preguntas frecuentes

¿El error 404 afecta al SEO?

Un 404 puntual no es grave, pero muchos enlaces rotos (internos o desde otros sitios) sí perjudican la experiencia de usuario y pueden afectar al posicionamiento si no se gestionan con redirecciones.

¿Cómo personalizo la página de error 404?

Con la directiva ErrorDocument 404 /ruta/a/tu/pagina.html en Apache, o la directiva equivalente error_page 404 en Nginx.

Artículos relacionados