Códigos de estado HTTP

Cuando un visitante accede a una página web, el navegador del visitante envía una solicitud al servidor donde se encuentra la página. Antes de que el navegador reciba y muestre la página, el servidor donde se encuentra dicha página devuelve un encabezado de información (server header) que contiene el código de estado HTTP para responder a la solicitud del navegador.

El término en inglés para el código de estado HTTP esHTTP Status Code。

A continuación se muestran los códigos de estado HTTP más comunes:

  • 1xx (códigos de estado informativos): Indica que la solicitud recibida se está procesando.
  • 2xx (códigos de estado de éxito): Indica que la solicitud se procesó correctamente.
  • 3xx (códigos de estado de redirección): Se necesitan acciones adicionales para completar esta solicitud.
  • 4xx (códigos de estado de error del cliente): Indica que la solicitud contiene errores de sintaxis o no puede completarse.
  • 5xx (códigos de estado de error del servidor): El servidor encontró un error al procesar la solicitud.

Clasificación de los códigos de estado HTTP

El código de estado HTTP consta de tres dígitos decimales. El primer dígito decimal define el tipo de código de estado. Las respuestas se dividen en cinco categorías: respuesta informativa (100–199), respuesta exitosa (200–299), redirección (300–399), error del cliente (400–499) y error del servidor (500–599):

Categoría Descripción de la categoría
1** Informativa: el servidor recibió la solicitud y necesita que el solicitante continúe con la operación.
2** Exitosa: la operación fue recibida y procesada correctamente.
3** Redirección: se requieren más acciones para completar la solicitud.
4** Error del cliente: la solicitud contiene errores de sintaxis o no puede completarse.
5** Error del servidor: el servidor encontró un error al procesar la solicitud.

Lista de códigos de estado HTTP:

Código de estado Nombre en inglés del código de estado Descripción
100 Continue Continuar. El cliente debe continuar con su solicitud.
101 Switching Protocols Cambio de protocolo. El servidor cambia de protocolo según la solicitud del cliente. Solo puede cambiar a un protocolo más avanzado, por ejemplo, a una nueva versión del protocolo HTTP.
200 OK Solicitud exitosa. Generalmente se usa para solicitudes GET y POST.
201 Created Creado. La solicitud se realizó correctamente y se creó un nuevo recurso.
202 Accepted Aceptado. Se ha aceptado la solicitud, pero aún no se ha procesado por completo.
203 Non-Authoritative Information Información no autorizada. La solicitud fue exitosa. Pero la información meta devuelta no está en el servidor original, sino que es una copia.
204 No Content Sin contenido. El servidor procesó la solicitud correctamente, pero no devolvió contenido. Sin actualizar la página web, se asegura que el navegador continúe mostrando el documento actual.
205 Reset Content Restablecer contenido. El servidor procesó la solicitud correctamente; el terminal del usuario (por ejemplo, el navegador) debe restablecer la vista del documento. Este código de respuesta se puede usar para borrar los campos de formulario del navegador.
206 Partial Content Contenido parcial. El servidor procesó correctamente una parte de la solicitud GET.
300 Multiple Choices Múltiples opciones. El recurso solicitado puede estar disponible en varias ubicaciones; en consecuencia, se puede devolver una lista de características y direcciones del recurso para que el terminal del usuario (por ejemplo, el navegador) elija.
301 Moved Permanently Movido permanentemente. El recurso solicitado se ha movido permanentemente a una nueva URI; la información de respuesta incluirá la nueva URI y el navegador se redirigirá automáticamente a la nueva URI. De ahora en adelante, cualquier nueva solicitud debe usar la nueva URI en su lugar.
302 Found Movido temporalmente. Similar a 301. Pero el recurso solo se ha movido temporalmente. El cliente debe continuar usando la URI original.
303 See Other Ver otras direcciones. Similar a 301. Se puede ver con solicitudes GET y POST.
304 Not Modified No modificado. El recurso solicitado no ha sido modificado; cuando el servidor devuelve este código de estado, no devuelve ningún recurso. El cliente suele almacenar en caché los recursos visitados y, al proporcionar un encabezado, indica que solo desea recibir los recursos modificados después de una fecha determinada.
305 Use Proxy Usar proxy. Se debe acceder al recurso solicitado a través de un proxy.
306 Unused Código de estado HTTP que ya está en desuso.
307 Temporary Redirect Redirección temporal. Similar a 302. Se redirige mediante una solicitud GET.
400 Bad Request Error de sintaxis en la solicitud del cliente; el servidor no puede entenderla.
401 Unauthorized La solicitud requiere autenticación de la identidad del usuario.
402 Payment Required Reservado para uso futuro.
403 Forbidden El servidor comprende la solicitud del cliente, pero se niega a ejecutarla.
404 Not Found El servidor no puede encontrar el recurso (página web) según la solicitud del cliente. Con este código, los diseñadores de sitios web pueden configurar una página personalizada que diga "El recurso que solicitó no se puede encontrar".
405 Method Not Allowed El método en la solicitud del cliente está prohibido.
406 Not Acceptable El servidor no puede completar la solicitud según las características de contenido de la solicitud del cliente.
407 Proxy Authentication Required La solicitud requiere autenticación de proxy. Similar a 401, pero el solicitante debe usar un proxy para autorizarse.
408 Request Time-out El servidor esperó demasiado tiempo la solicitud del cliente; se agotó el tiempo de espera.
409 Conflict El servidor puede devolver este código al completar una solicitud PUT del cliente; se produjo un conflicto al procesar la solicitud.
410 Gone El recurso solicitado por el cliente ya no existe. 410 es diferente de 404; si el recurso existía antes y ahora se ha eliminado permanentemente, se puede usar el código 410. Los diseñadores de sitios web pueden especificar la nueva ubicación del recurso mediante el código 301.
411 Length Required El servidor no puede procesar la solicitud enviada por el cliente sin Content-Length.
412 Precondition Failed Error en las condiciones previas de la solicitud del cliente.
413 Request Entity Too Large Debido a que la entidad de la solicitud es demasiado grande, el servidor no puede procesarla y, por lo tanto, rechaza la solicitud. Para evitar solicitudes continuas del cliente, el servidor puede cerrar la conexión. Si el servidor solo no puede procesarla temporalmente, incluirá un encabezado de respuesta Retry-After.
414 Request-URI Too Large La URI de la solicitud es demasiado larga (la URI normalmente es una dirección web); el servidor no puede procesarla.
415 Unsupported Media Type El servidor no puede procesar el formato de medios adjunto a la solicitud.
416 Requested range not satisfiable El rango solicitado por el cliente no es válido.
417 Expectation Failed (fallo de expectativa) El servidor no puede cumplir el comportamiento esperado especificado en el campo Expect de la cabecera de la solicitud.
418 I'm a teapot El código de estado 418 es en realidad una broma del Día de las Bromas de Abril. Está definido en el RFC 2324, un archivo de broma sobre el Protocolo de control de cafeteras hipertextual (HTCPCP). En esta broma, el código de estado 418 se añadió al protocolo HTTP como una broma.
500 Internal Server Error Error interno del servidor; no se puede completar la solicitud.
501 Not Implemented El servidor no admite la funcionalidad solicitada; no se puede completar la solicitud.
502 Bad Gateway Cuando el servidor que actúa como puerta de enlace o proxy intenta ejecutar la solicitud, recibe una respuesta no válida del servidor remoto.
503 Service Unavailable Debido a sobrecarga o mantenimiento del sistema, el servidor no puede procesar temporalmente la solicitud del cliente. La duración del retraso puede incluirse en la cabecera Retry-After del servidor.
504 Gateway Time-out El servidor que actúa como puerta de enlace o proxy no obtuvo la solicitud a tiempo del servidor remoto.
505 HTTP Version not supported El servidor no admite la versión del protocolo HTTP de la solicitud; no se puede completar el procesamiento.
Otras extensiones