Los códigos de errores web son una parte fundamental del funcionamiento de cualquier sitio en Internet. Si alguna vez has navegado por la web, probablemente te hayas topado con alguno de estos códigos: 404, 500, 301… ¿pero sabes lo que realmente significan? ¿Por qué ocurren? Y lo más importante, ¿cómo puedes solucionarlos?
Este artículo te proporcionará una guía completa sobre todos los códigos de errores web. Desde los códigos informativos hasta los errores del cliente o del servidor, explicaremos cada uno de estos códigos y te ofreceremos soluciones para que puedas enfrentarlos sin problema.
Códigos 1xx: Información
100 – Continuar
Por qué ocurre:
El código 100 es una respuesta provisional del servidor, que le indica al cliente (generalmente el navegador) que la solicitud inicial ha sido recibida correctamente y que el servidor está listo para recibir más datos. Este código suele ser una señal de que la solicitud HTTP está en proceso, pero aún no se ha completado. Se usa comúnmente en solicitudes grandes o complejas, como las que incluyen cargas de archivos o solicitudes de larga duración.
Este código es típicamente visto en conexiones de protocolos HTTP 1.1 durante procesos de verificación o de solicitud de recursos pesados. Los navegadores o clientes que reciben este código suelen seguir enviando más datos al servidor para completar la acción.
Cómo solucionarlo:
El código 100 generalmente no requiere intervención manual, ya que es un código informativo utilizado por el servidor para indicar que todo va bien hasta el momento. Sin embargo, si estás experimentando problemas con el proceso, asegúrate de que no haya restricciones en el tamaño de la solicitud o en la cantidad de datos que se están enviando. Si el código 100 persiste, podría indicar un mal funcionamiento temporal del servidor que debería resolverse reiniciando la conexión.
101 – Cambio de protocolo
Por qué ocurre:
El código 101 indica que el servidor ha comprendido la solicitud del cliente y está dispuesto a cambiar el protocolo de comunicación, como cuando se pasa de HTTP a HTTPS para garantizar una conexión segura. Este cambio de protocolo puede ser solicitado explícitamente por el cliente, y el servidor acepta la solicitud para hacer el cambio.
Este código se usa cuando un cliente pide explícitamente cambiar de un protocolo a otro, y el servidor responde aceptando ese cambio. Un ejemplo común sería cuando un cliente quiere asegurar una comunicación encriptada, y el servidor acepta ese cambio de protocolo para hacerlo.
Cómo solucionarlo:
Este código es generalmente automático y no debería requerir intervención manual. Si ves este código, significa que tu servidor ha aceptado el cambio de protocolo correctamente. Sin embargo, si experimentas errores, revisa las configuraciones del servidor para asegurarte de que ambos protocolos sean compatibles. Asegúrate de que el servidor tenga instalado el certificado SSL necesario para cambiar de HTTP a HTTPS. Si el cambio de protocolo no se realiza correctamente, podría ser debido a una configuración de seguridad defectuosa o la falta de soporte para el protocolo solicitado.
102 – Procesando
Por qué ocurre:
Este código indica que la solicitud que ha recibido el servidor está siendo procesada, pero no se ha completado aún. Se utiliza especialmente en solicitudes que requieren mucho tiempo de procesamiento, como la subida de archivos grandes o consultas a bases de datos complejas. En lugar de devolver una respuesta inmediata, el servidor informa al cliente que está trabajando en ello y que aún no puede proporcionar los resultados.
Este código es común en aplicaciones que manejan transacciones grandes o procesos que toman un tiempo significativo, como el procesamiento de pagos o la generación de informes complejos.
Cómo solucionarlo:
El código 102 normalmente no requiere intervención directa, ya que es una respuesta provisional del servidor. Sin embargo, si el servidor tarda demasiado en procesar la solicitud, podría ser un signo de un problema de rendimiento o de sobrecarga del servidor. Asegúrate de que el servidor tenga suficiente capacidad de procesamiento y que no haya limitaciones de recursos (como CPU, RAM o ancho de banda). Si el código 102 persiste por un tiempo excesivo, puedes considerar optimizar el proceso o las consultas para reducir la carga en el servidor.
Códigos 2xx: Éxito
200 – OK
Por qué ocurre:
El código 200 es la respuesta más común que puedes esperar al realizar una solicitud web. Indica que la solicitud fue exitosa y que el servidor ha devuelto los datos solicitados al cliente, como el contenido de una página web, una imagen o un archivo. Es la respuesta estándar para cualquier solicitud HTTP correcta.
Este código significa que todo está funcionando como se espera, sin ningún tipo de error en el servidor ni en la solicitud realizada. Es el código que se espera ver cuando se navega a un sitio web correctamente sin ningún problema.
Cómo solucionarlo:
No se necesita ninguna acción para este código, ya que es un código de éxito. Si ves este código, significa que todo está funcionando bien y que tu página o recurso se ha cargado correctamente. Si experimentas problemas con la carga del sitio a pesar de recibir un 200, puede haber un problema local en tu navegador o una caché corrupta. Intenta limpiar la caché de tu navegador o recargar la página.
201 – Creado
Por qué ocurre:
Este código se devuelve cuando una solicitud ha sido exitosa y, como resultado, se ha creado un nuevo recurso. Por ejemplo, si realizas una solicitud para crear una nueva entrada en una base de datos o un nuevo archivo en el servidor, el código 201 indicará que ese recurso ha sido creado con éxito.
El código 201 no solo indica éxito, sino que también señala que la acción de creación se ha completado correctamente, lo que significa que ahora puedes interactuar con ese nuevo recurso de la manera que desees.
Cómo solucionarlo:
Este código indica que no hay problemas. Si estás utilizando un sistema que crea contenido o recursos, como una API o un servicio de almacenamiento de archivos, y ves este código, significa que todo ha funcionado correctamente. Si no ves el recurso creado, asegúrate de revisar el registro de la base de datos o el servidor de archivos para verificar que la creación se haya realizado correctamente. También revisa si la acción posterior a la creación (como la visualización o la actualización) ha sido implementada correctamente.
202 – Aceptado
Por qué ocurre:
El código 202 indica que el servidor ha recibido la solicitud y está procesando la información, pero aún no ha completado la acción. Este código es común en procesos que toman tiempo, como enviando un correo electrónico o realizando un procesamiento en segundo plano.
Cómo solucionarlo:
Este código no requiere acción inmediata. Si la solicitud no se completa a tiempo, asegúrate de que los procesos en segundo plano estén correctamente configurados y no haya problemas de rendimiento en el servidor que retrasen la ejecución de la solicitud.
203 – Información no autorizada
Por qué ocurre:
El servidor procesó la solicitud, pero la información proporcionada no es válida. Este código es frecuente en solicitudes API, donde el servidor puede no tener acceso a la información solicitada por restricciones de seguridad o validación de datos.
Cómo solucionarlo:
Asegúrate de que los datos enviados sean correctos y estén completos. Verifica que el token de acceso o las credenciales de autorización sean válidas para que el servidor pueda acceder a los recursos solicitados.
204 – No contenido
Por qué ocurre:
El código 204 indica que la solicitud fue exitosa, pero no hay contenido que devolver. Esto puede ocurrir en solicitudes de eliminación de recursos o cuando el servidor ha realizado una acción correctamente, pero no necesita enviar ningún dato al cliente.
Cómo solucionarlo:
Este código generalmente no necesita corrección. Si el código se devuelve de forma inesperada, revisa si el recurso solicitado se ha procesado correctamente en el servidor y si se esperaba algún tipo de respuesta adicional.
Códigos 3xx: Redirección
300 – Varias opciones
Por qué ocurre:
El código 300 indica que el servidor ha encontrado varias opciones para el recurso solicitado. El cliente debe elegir entre las diferentes URL disponibles para acceder al recurso, como elegir entre una página en diferentes idiomas o entre una versión móvil o de escritorio.
Cómo solucionarlo:
Este código es útil cuando se necesita ofrecer al usuario varias opciones para acceder al recurso, como en sitios web que tienen versiones alternativas. Si el servidor devuelve este código inesperadamente, asegúrate de que las redirecciones estén configuradas correctamente.
301 – Movido permanentemente
Por qué ocurre:
El código 301 indica que el recurso solicitado ha sido moved permanently a una nueva URL. Esto se utiliza cuando un recurso se ha trasladado de manera permanente, como cuando un sitio web cambia de dirección o se reorganizan sus páginas.
Cómo solucionarlo:
Este código requiere que el servidor redirija permanentemente a la nueva URL. Si estás haciendo una redirección permanente, asegúrate de que los enlaces a la nueva URL estén correctamente configurados y que las reglas de redirección en el archivo .htaccess o el servidor web estén configuradas adecuadamente.
302 – Encontrado
Por qué ocurre:
Este código se usa cuando el recurso solicitado se encuentra temporalmente en una ubicación diferente, pero la URL original debería seguir siendo utilizada. Es común cuando se redirige a los usuarios a una página de mantenimiento o de error.
Cómo solucionarlo:
Si este código es inesperado, revisa las redirecciones temporales y asegúrate de que los usuarios se redirijan correctamente solo cuando sea necesario. Si la redirección es permanente, considera utilizar el código 301 en su lugar.
303 – Ver otra
Por qué ocurre:
El código 303 se usa para indicar que el cliente debe realizar una nueva solicitud GET a una URL diferente para obtener el recurso. Generalmente se utiliza después de un envío de formulario exitoso.
Cómo solucionarlo:
Si ves este código, asegúrate de que la solicitud GET se realice correctamente y que el cliente esté siendo redirigido de manera eficiente. Este código es común en formularios de pago o en procesos de confirmación.
Códigos 4xx: Errores del Cliente
400 – Solicitud incorrecta
Por qué ocurre:
Este código indica que el servidor no puede procesar la solicitud porque hay un error en la solicitud del cliente. Esto puede deberse a una sintaxis incorrecta en la URL, parámetros mal formateados, o una solicitud que no sigue el formato adecuado.
Cómo solucionarlo:
Verifica que la URL esté correctamente formateada y que todos los parámetros sean válidos. Revisa también que los métodos de solicitud HTTP sean correctos para la operación deseada.
401 – No autorizado
Por qué ocurre:
El código 401 se devuelve cuando el cliente no está autorizado para acceder al recurso solicitado. Esto puede suceder cuando las credenciales proporcionadas son incorrectas o cuando no se ha proporcionado ninguna credencial.
Cómo solucionarlo:
Asegúrate de que las credenciales de usuario sean correctas y de que el cliente esté autenticado adecuadamente. Si estás utilizando autenticación basada en tokens o OAuth, verifica que el proceso de autenticación esté correctamente configurado.
402 – Pago requerido
Por qué ocurre:
El código 402 es utilizado por servidores que requieren que el usuario realice un pago para acceder al recurso. Es más común en plataformas de pago por servicio o sitios web con suscripciones premium.
Cómo solucionarlo:
Si este código aparece inesperadamente, revisa las configuraciones de pago y asegúrate de que los usuarios tengan acceso a los recursos solo después de realizar el pago correspondiente.
403 – Prohibido
Por qué ocurre:
Este código significa que el servidor ha entendido la solicitud, pero se niega a autorizarla. El acceso al recurso está prohibido por diversas razones, como restricciones de seguridad, falta de permisos, o cuando un firewall o configuración de seguridad está bloqueando el acceso.
Cómo solucionarlo:
Verifica las configuraciones de permisos del archivo o recurso solicitado. Si estás utilizando un servidor web como Apache o Nginx, asegúrate de que no haya reglas de .htaccess o configuración de firewall que impidan el acceso. Además, asegúrate de que las credenciales de acceso del usuario sean correctas y que tenga los permisos adecuados para acceder al recurso.
404 – No encontrado
Por qué ocurre:
Este es el código de error más conocido y significa que el servidor no ha encontrado el recurso solicitado. Puede ser porque la URL está mal escrita, el recurso ha sido eliminado o movedido sin actualizar los enlaces.
Cómo solucionarlo:
Revisa la URL para asegurarte de que esté escrita correctamente. Si el recurso ha sido movido o eliminado, configura una redirección 301 desde la URL antigua a la nueva. Además, asegúrate de que la página no esté siendo bloqueada accidentalmente por un archivo robots.txt o restricciones en el servidor.
405 – Método no permitido
Por qué ocurre:
Este código se devuelve cuando el método HTTP (como GET, POST, PUT, DELETE) que se utiliza en la solicitud no está permitido para el recurso solicitado. Por ejemplo, se intenta enviar datos a una página que solo admite solicitudes GET.
Cómo solucionarlo:
Verifica que el método HTTP utilizado en la solicitud sea compatible con el recurso que se intenta acceder. Si el recurso no admite el método, ajusta la configuración del servidor para que solo permita los métodos correctos para ese recurso.
406 – No aceptable
Por qué ocurre:
El servidor no puede procesar la solicitud porque el tipo de contenido solicitado no es aceptable según los encabezados enviados. Esto puede suceder cuando se solicita un formato de respuesta que el servidor no puede proporcionar.
Cómo solucionarlo:
Verifica los encabezados Accept de la solicitud para asegurarte de que el tipo de contenido que el cliente está pidiendo es soportado por el servidor. Si es necesario, ajusta las configuraciones para aceptar los tipos de contenido que el cliente está buscando.
407 – Autenticación de proxy requerida
Por qué ocurre:
Este código indica que el proxy que se está utilizando requiere autenticación antes de que se pueda proceder con la solicitud. Es común en redes que emplean servidores proxy para controlar el acceso a Internet.
Cómo solucionarlo:
Si estás utilizando un servidor proxy, asegúrate de que el cliente tenga las credenciales adecuadas para autenticarse correctamente ante el proxy. Si el proxy está configurado de manera incorrecta, ajusta las configuraciones de autenticación para permitir que el cliente pase por el filtro del proxy.
408 – Tiempo de espera agotado
Por qué ocurre:
El código 408 ocurre cuando el cliente no envía una solicitud completa en el tiempo esperado por el servidor. Esto puede ser debido a una conexión lenta o un tiempo de espera de la red.
Cómo solucionarlo:
Verifica si la conexión a Internet del cliente es estable y rápida. Si el tiempo de espera sigue siendo un problema recurrente, puedes aumentar los tiempos de espera en la configuración del servidor o mejorar la infraestructura de red para reducir la latencia.
409 – Conflicto
Por qué ocurre:
Este código indica que la solicitud no puede ser procesada debido a un conflicto con el estado actual del recurso, como al intentar realizar una operación incompatible con el estado de un archivo o registro.
Cómo solucionarlo:
Revisa el estado del recurso que se está modificando. Si el cliente está intentando realizar una acción conflictiva (como actualizar un archivo que ha cambiado desde la última vez que fue consultado), asegúrate de que el servidor esté configurado para manejar esos conflictos correctamente. Implementar controles de versión en archivos o registros puede ser útil.
410 – Gone
Por qué ocurre:
Este código indica que el recurso solicitado ha sido eliminado permanentemente y que el servidor no lo tiene disponible. A diferencia del 404, el 410 significa que el recurso ya no existirá en el futuro.
Cómo solucionarlo:
Si se eliminó un recurso permanentemente, asegúrate de proporcionar una redirección 410 si es necesario o actualizar los enlaces internos que apuntan a ese recurso. Este código también se puede usar para eliminar páginas obsoletas o depreciadas en el sitio web.
411 – Longitud requerida
Por qué ocurre:
Este código ocurre cuando el servidor requiere que se especifique una longitud de contenido en la solicitud (usualmente en el encabezado Content-Length
), pero no se ha proporcionado.
Cómo solucionarlo:
Asegúrate de que los clientes que envían solicitudes con contenido (por ejemplo, en solicitudes POST o PUT) especifiquen la longitud del contenido en los encabezados. Esto es crucial para que el servidor sepa cuánto contenido debe esperar.
Códigos 5xx: Errores del Servidor
500 – Error interno del servidor
Por qué ocurre:
El código 500 indica que el servidor ha encontrado un error inesperado que no ha podido manejar. Este es un código genérico, lo que significa que el servidor ha fallado sin proporcionar detalles específicos sobre lo que salió mal.
Cómo solucionarlo:
Verifica los logs del servidor para encontrar detalles sobre el error. Un error 500 puede ser causado por fallos en el servidor, como errores de programación en el backend, problemas con la base de datos o una configuración incorrecta del servidor. Revisa los archivos de configuración y la programación para detectar y corregir el problema.
501 – No implementado
Por qué ocurre:
Este código significa que el servidor no puede procesar la solicitud porque no tiene la funcionalidad necesaria para manejarla. Esto podría ocurrir si el servidor no soporta el método HTTP que se está utilizando.
Cómo solucionarlo:
Verifica que el servidor esté configurado correctamente para aceptar el método de solicitud utilizado. Si el servidor no tiene la funcionalidad necesaria, podría ser necesario actualizar o cambiar la configuración para habilitar ese método específico.
502 – Bad Gateway
Por qué ocurre:
El código 502 indica que el servidor actuando como un gateway o proxy recibió una respuesta inválida del servidor de destino. Esto puede ser causado por servidores caídos o configuraciones incorrectas en los gateways.
Cómo solucionarlo:
Revisa la conexión entre los servidores y asegúrate de que todos los servidores involucrados estén funcionando correctamente. Si usas servidores proxy, revisa las configuraciones de los gateways para garantizar que se estén comunicando correctamente.
503 – Servicio no disponible
Por qué ocurre:
Este código ocurre cuando el servidor está temporalmente sobrecargado o en mantenimiento y no puede procesar la solicitud en ese momento.
Cómo solucionarlo:
Si el servidor está en mantenimiento, asegúrate de que los usuarios reciban una página de mantenimiento amigable. Si el servidor está sobrecargado, revisa la capacidad de recursos (como CPU, RAM y ancho de banda) y considera aumentar la capacidad del servidor o distribuir la carga entre varios servidores.
504 – Tiempo de espera del gateway agotado
Por qué ocurre:
Este error ocurre cuando un servidor gateway o proxy no recibe una respuesta a tiempo de otro servidor, lo que resulta en una solicitud sin respuesta.
Cómo solucionarlo:
Verifica si los servidores de destino están funcionando correctamente y si la conexión de red es estable. Si el problema persiste, verifica la configuración de proxy y ajusta los tiempos de espera de los gateways.
Códigos 6xx: Errores no estándar (personalizados)
600 y superiores – Errores personalizados
Por qué ocurre:
Los códigos 6xx y superiores son utilizados por algunos servidores o aplicaciones específicas para reportar errores no estándar. Estos códigos pueden ser personalizados por aplicaciones de terceros para representar errores que no encajan en las categorías tradicionales.
Cómo solucionarlo:
Estos errores deben ser tratados de acuerdo con la documentación de la aplicación o servidor que los genera. Es importante revisar los logs personalizados y las configuraciones de las aplicaciones para obtener más detalles sobre el problema y cómo solucionarlo.
Conclusión
Los códigos de error web son una parte integral de la gestión y operación de sitios web. Cada uno de ellos ofrece información valiosa sobre el estado de una solicitud y proporciona pistas sobre lo que puede estar ocurriendo. Conocer estos códigos y saber cómo solucionarlos es esencial para mantener tu sitio funcionando sin problemas y garantizar que los usuarios tengan la mejor experiencia posible.
Si alguna vez te enfrentas a un error web, recuerda que cada código tiene su propósito, y con un poco de investigación y diagnóstico, puedes solucionarlo de manera efectiva.