¿Cómo reparar un error 406 y encontrar el origen del problema?

Procédure

Introducción

A veces se producen errores en servidores y clientes, normalmente denominados respuestas HTTP o códigos de estado. El "Error 406" o "406 No Aceptable" es una de estas respuestas HTTP.

Encontrarse con el error 406 mientras se navega por un sitio puede ser frustrante. Peor aún, verlo en su propio sitio web puede ser alarmante para el propietario de un sitio o aplicación. Además de parecer poco profesional y desconcertante, cualquier respuesta HTTP, incluido el error 406, puede provocar pérdidas de ventas y de usuarios.

Este artículo explora los conceptos básicos del error "406 no aceptable", qué lo causa, cómo resolverlo y qué puede hacer para evitar que se produzca en el futuro.

¿Qué es el error 406?

Afortunadamente, el mensaje de error HTTP "406 Not Acceptable" no es tan común como otros errores de servidor como el conocido error 404 (que suele indicar una página inexistente) o incluso los errores HTTP 301 o 500. Como resultado, no debería encontrarse con este mensaje con tanta frecuencia.

Sin embargo, aunque poco frecuente, el error 406 puede causar problemas a su sitio web cuando se produce. Suele manifestarse de la siguiente manera:

¿Cómo reparar un error 406 y encontrar el origen del problema?

La apariencia y el texto exacto del mensaje de error 406 pueden variar en función del sitio web, el host y el navegador utilizado para acceder al sitio. Sin embargo, el error 406 puede dar una pista sobre el origen del problema. En algunos casos, se trata simplemente de un error "406 No Aceptable" sin información adicional que ayude a resolver el problema.

En resumen, se trata esencialmente de un problema de comunicación entre el servidor y el navegador o la máquina utilizada para mostrar la aplicación web. El navegador no puede interpretar los datos recibidos porque no cumplen ciertos requisitos.

¿Qué causa el error 406?

Cada vez que abre una página web, su navegador (como Safari, Firefox, Brave, Chrome o Internet Explorer) envía una petición al servidor de la página para recuperar el contenido del sitio y los archivos de la base de datos. El navegador actúa como mensajero entre usted y el servidor: le dice al servidor lo que el usuario quiere ver y, con suerte, se le devuelve la información correcta.

Durante esta primera petición, el navegador informa al servidor de los formatos de archivo que puede aceptar. Esto se conoce como una petición Accept-header, que pide al servidor que proporcione archivos en los formatos adecuados para mostrar todo el sitio o aplicación web, empezando por la cabecera.

A veces el servidor envía una respuesta que no está en el formato apropiado o que rompe una regla establecida por el navegador o la máquina cliente. En este caso, aparece un error 406 en la ventana del navegador, indicando que el servidor no está proporcionando los datos apropiados.

He aquí algunos ejemplos de "malos formatos" e "infracciones de las reglas" que pueden producirse con las solicitudes de encabezado:

Accept-ranges: Algunos servidores tienen medidas de seguridad o sólo permiten un rango específico de tamaño de archivo en la respuesta. Si la respuesta intenta enviar demasiados bytes fuera del rango permitido, se producirá un error 406.

Accept-encoding: Esta sección de la cabecera está destinada a la compresión de archivos para facilitar una transferencia rápida del servidor al navegador. Algunos formatos de compresión no son aceptados, produciéndose un error 406.

Accept-charset: Se refiere a un conjunto de caracteres o a la forma en que los archivos del sitio utilizan el código (como CSS y HTML) y lo transforman en caracteres comprensibles. Existen diferentes tablas de caracteres para diferentes idiomas y símbolos.

Accept-language: Es un parámetro diferente de Accept-charset, que se centra en los idiomas internacionales.

Violación del tipo M IME: A veces, el navegador solicita al servidor un tipo MIME específico. Si el servidor no puede proporcionar el tipo MIME solicitado, como imágenes JPEG, se produce un error 406.

La principal forma de manejar y corregir un error 406 es inspeccionar el código fuente en busca de problemas en las cabeceras Accept-, Request- y Response-.

La forma más sencilla de inspeccionar las cabeceras Accept- y Response- es abrir una página web en el navegador, hacer clic con el botón derecho y seleccionar Inspeccionar.

A continuación, vaya a Red > Cabeceras para ver todas las peticiones de esa página web.

¿Cómo reparar un error 406 y encontrar el origen del problema?

Normalmente puede seleccionar cualquier petición de la larga lista para ver las cabeceras de Petición y Respuesta de esa petición en particular.

¿Cómo reparar un error 406 y encontrar el origen del problema?

También puede pedir ayuda a su programador web para examinar el código fuente. Sin embargo, inspeccionar el código fuente es mucho más fácil cuando tienes acceso a herramientas de depuración y limpieza de bases de datos, cuyos detalles discutiremos más adelante en este artículo.

Como se mencionó anteriormente, un error '406 No Aceptable' indica que el cliente envió una solicitud válida al servidor, pero con un requisito específico que el servidor no pudo satisfacer. Este requisito concreto de la solicitud original se formuló en la cabecera HTTP Accept-.

Esto nos lleva a considerar algunas causas potenciales:

  • El servidor no ha proporcionado el tipo MIME solicitado o los formatos adecuados, como un vídeo JPEG o mp4.
  • El servidor no ha devuelto el idioma correcto (Accept-language). Por ejemplo, puede haber devuelto una respuesta en alemán cuando el navegador solicitaba francés.
  • El servidor ha utilizado un método o formato de compresión incorrecto en respuesta a la petición Accept-encoding.
  • El servidor transmitió demasiados bytes que no coincidían con la petición Accept-ranges.
  • El servidor no ha proporcionado caracteres comprensibles, lo que podría ser un problema con la petición Accept-charset del navegador.

Hay otras posibles razones por las que puede encontrarse con el error 406, aunque son menos comunes. La lista anterior muestra las razones más comunes, de la más común a la menos común. Las dos primeras razones suelen ser las más probables, por lo que es aconsejable concentrar los esfuerzos en buscar posibles violaciones del tipo MIME o problemas de Accept-language.

En general, los propietarios de sitios web deben ser conscientes de estos problemas y de las violaciones de formato, ya que pueden estar causados por diversas anomalías en los archivos de su sitio. A menudo, estas situaciones son el resultado de errores humanos, como la introducción accidental de código incorrecto, la eliminación involuntaria de código necesario o la configuración incorrecta del servidor. El error 406 también puede producirse cuando determinadas configuraciones o reglas de seguridad bloquean la transmisión de contenidos desde el servidor.

¿Cómo puedo corregir el error 406?

Ahora que hemos aclarado las razones por las que se produce el error 406, veamos los mejores enfoques para resolverlo y evitar que se repita.

Estas estrategias abarcan causas del lado del cliente (cuando un usuario comete un error o la máquina funciona mal), causas del lado del servidor y problemas relacionados con la plataforma, como extensiones defectuosas.

Asegúrese de que la URL es correcta

Nuestro primer consejo puede parecer simple, pero es la opción de solución de problemas más rápida, y se centra en los problemas en el lado del cliente, es decir, en su ordenador.

Aunque el error 404 es mucho más común que el 406 en esta situación, aún puede encontrarse con un error "406 no aceptable" si la URL del sitio web es válida. En algunos casos, esto puede ser el resultado de una interpretación extraña de la solicitud por parte de su navegador. Por ejemplo, añadir "JSON" o "PHP" al final de una URL puede interpretarse como una petición de estos formatos específicos, aunque el cliente no los necesite.

Para resolver el problema, vuelva a examinar la URL utilizada anteriormente que causó el error. Intente introducirla de nuevo o explore otros subdominios del sitio web para ver si no se muestra una sola página.

Deshacer los cambios recientes en el CMS

A continuación, es hora de explorar el sistema utilizado para sus sitios web o aplicaciones. Podría ser que su sistema de gestión de contenidos, como WordPress, sea la causa directa de un error "406 No Aceptable" debido a una complicación con algo en los archivos de su sitio.

Tanto si utiliza WordPress como cualquier otro sistema de gestión de contenidos, compruebe la fecha de su última actualización. WordPress cuenta con una sólida infraestructura por defecto diseñada para evitar este tipo de errores, pase lo que pase.

Sin embargo, extensiones específicas, temas o código modificado manualmente podrían producir situaciones en las que los archivos del sitio violen las peticiones del cliente o del servidor. Una simple actualización a la última versión de su CMS puede solucionar el problema inmediatamente.

Para saber si se trata de tu CMS, empieza por deshacer cualquier actualización reciente de los archivos del núcleo. Como ya sabrás, WordPress envía actualizaciones periódicas a su sistema. La mayoría de estas actualizaciones se producen automáticamente, pero las versiones más antiguas todavía requieren que haga clic en un botón.

Además, WordPress y otros CMS utilizan varios elementos móviles como plugins, temas y extensiones. Estos elementos también se actualizan con regularidad, por lo que es posible que tengas que dar de baja algunos de ellos.

Para todos los sistemas que no sean WordPress, busca "nombre de la plataforma + cómo restaurar" en un motor de búsqueda como Google.

La forma más sencilla de restaurar una versión antigua de su CMS es restaurar una copia de seguridad siguiendo esta documentación.

Desinstalar y reinstalar plugins, temas y extensiones

Las extensiones y temas de WordPress añaden código adicional a los archivos de su sitio, que interactúa con los archivos del núcleo de WordPress. Aunque no suele haber problemas con las extensiones de buena reputación, a veces puede producirse un conflicto. Un plugin, tema o extensión de terceros podría estar causando el error 406.

Para identificar la extensión, por favor siga esta documentación.

[tips_info]Le recomendamos que realice las acciones sobre las extensiones antes de pasar a los temas. Desactivar o cambiar los temas puede provocar una mayor reorganización del contenido[/consejos].

Analice los registros de su servidor

Los consejos anteriores se centraban en la resolución de problemas en el lado del cliente y del CMS. Ahora nos centraremos en los problemas del servidor. Estos consejos, y los que siguen, son útiles si no utiliza un CMS o si sospecha que el error 406 no está relacionado con su CMS o máquina cliente.

El primer paso en la solución de problemas del lado del servidor es comprobar los registros. No importa qué tipo de aplicación web, CMS o sistema de diseño web utilice, todos tienen registros del lado del servidor.

Los registros de aplicación registran la historia completa o reciente de la aplicación web, proporcionando información sobre cada consulta a la base de datos, los resultados proporcionados, las páginas solicitadas y más. Los registros del servidor, por otro lado, contienen información sobre la salud y el estado del servidor o del hardware utilizado para ejecutar la aplicación web.

Puedes ver los registros error.log y access. log consultando esta documentación.

La siguiente imagen muestra un ejemplo de registro vinculado a un error 406:

¿Cómo reparar un error 406 y encontrar el origen del problema?

En este ejemplo, fue el sistema ModSecurity el que rechazó la petición y generó el error 406. Por tanto, es necesario comprobar la regla que se ha levantado y corregir el problema en el sitio o desactivar la regla si considera que no tiene ningún impacto en la seguridad de su sitio web.

Prevenir errores 406 en el futuro

Nada que un poco de solución de problemas no pueda resolver. Cuando el error 406 se produce en su sitio web o aplicación, puede ser más preocupante. En este caso, es crucial comprobar el servidor y los archivos del sitio CMS.

Para evitar que este error se repita en el futuro, he aquí algunos consejos para mantener limpias las bases de datos y los archivos del sitio:

  1. Limite la instalación de plugins, temas y extensiones a sólo aquellos elementos que sean necesarios y de buena reputación. Mantenga siempre estos elementos en un mínimo estricto.

  2. Evite modificar los archivos del núcleo de WordPress, a menos que sea absolutamente necesario y si sabe lo que está haciendo.

  3. Planifique ejecutar un limpiador de base de datos y un optimizador de sitio con regularidad. Se recomienda hacerlo cada mes y encontrar una extensión de limpieza que funcione en segundo plano.

  4. Configura copias de seguridad automáticas de tu sitio web o aplicación. Así, en caso de conflicto o error de código, podrás restaurar una versión anterior sin estrés.

  5. Realice siempre una copia de seguridad manual de su sitio antes de actualizar WordPress y sus extensiones, aunque disponga de copias de seguridad automáticas. También es aconsejable hacer una copia de seguridad antes de modificar archivos o añadir código nuevo al sitio.

Conclusión

Ahora ya sabe cómo :

  • Reconocer y comprender el origen del error 406 No aceptable
  • Identificar las causas potenciales de este error, ya estén relacionadas con Accept-ranges, Accept-encoding, Accept-charset, Accept-language o una violación del tipo MIME.
  • Diagnostique y corrija el error 406 comprobando la URL, deshaciendo cambios recientes en el CMS, desinstalando y reinstalando plugins o temas, y analizando los registros de su servidor.
  • Prevenga el error 406 limitando la instalación de plugins, evitando modificaciones en los archivos principales de su CMS, programando limpiezas periódicas de la base de datos y configurando copias de seguridad automáticas y manuales.

🔍🛠️ Gracias a estos consejos prácticos, ahora estás armado para abordar y prevenir eficazmente el error 406 No Aceptable, y así garantizar una experiencia de usuario fluida y profesional en tu sitio web. 🚀

Me gustaría agradecerte tu atenta lectura y espero que este artículo te haya proporcionado las claves que necesitas para gestionar de la mejor manera posible los errores del servidor. 🙏 Si tienes alguna pregunta o quieres compartir tu experiencia con el error 406, no dudes en dejar un comentario a continuación. ¡Tus comentarios son valiosos y nos ayudan a mejorar continuamente nuestro servicio!

Valora este artículo :

1/5 | 1 opinión

Este artículo le ha sido útil ?

Article utile

Article non utileNo

Vous souhaitez nous laisser un commentaire concernant cet article ?

Si cela concerne une erreur dans la documentation ou un manque d'informations, n'hésitez pas à nous en faire part depuis le formulaire.

Pour toute question non liée à cette documentation ou problème technique sur l'un de vos services, contactez le support commercial ou le support technique

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Artículos similares

0mn lectura

Cloudflare Error 524 : Se ha agotado el tiempo de espera

3mn lectura

Cómo corregir un error 500 en su sitio con LWS Panel

10mn lectura

¿Cómo corrijo los códigos de error HTTP?

0mn lectura

Error 404, qué es y cómo corregirlo


Formule una pregunta al equipo de LWS y a su comunidad