Código de estado de respuesta HTTP: una lista completa

Patrick Stox
Patrick Stox es asesor de producto, técnico en SEO y embajador de marca Ahrefs. Organiza el Raleigh SEO Meetup, Raleigh SEO Conference, Beer & SEO Meetup, Findability Conference y modera en / r / TechSEO.
    Los códigos de estado de respuesta HTTP son respuestas del servidor al cliente (cuando hablamos de cliente normalmente nos referimos al navegador web). Los códigos de estado se encuentran en la respuesta del servidor. Éstos incluyen un número de tres dígitos y suelen tener una descripción del estado. Las especificaciones y su funcionalidad están definidas por el World Wide Web Consortium (W3C).

    Los códigos de estado indican cómo un cliente y un servidor se comunican entre sí. Puedes ver los códigos de estado de respuesta HTTP de cualquier página de forma gratuita utilizando el SEO Toolbar de Ahrefs haciendo clic en el número de tres dígitos.

    También puedes hacer clic y expandir un desplegable para ver la respuesta completa del encabezado, algo que ayuda a solucionar muchos problemas técnicos.

    Existen cinco rangos para estos códigos:

    Continúa leyendo para saber qué significan estos códigos de estado de respuesta HTTP y cómo los maneja Google.

    Los códigos de estado 1xx indican que el servidor ha recibido la solicitud y el procesamiento continuará adelante.

    100 Continue: Todo está bien de momento. Sigue adelante.

    101 Switching protocols: Hay un mensaje, como una solicitud de actualización, que cambia las cosas a un protocolo diferente.

    102 Processing: Todo sigue adelante, pero aún no ha terminado del todo.

    103 Early Hints: Te permite precargar recursos, lo que puede ayudar a mejorar el Largest Contentful Paint del Core Web Vitals.

    Los códigos de estado 2xx significan que se ha recibido una solicitud de cliente, entendido y aceptado.

    200 OK: Todo perfecto.

    201 Created: similar al 200, pero la forma de medir el éxito es que se ha creado un nuevo recurso.

    202 Accepted: se ha aceptado una solicitud para su procesamiento, pero aún no se ha completado. Puede que ni siquiera haya comenzado todavía.

    203 Non-authoritative information: algo ha cambiado desde que la información se envió desde el servidor.

    204 No content: la solicitud se ha enviado, pero no tiene ningún contenido.

    205 Reset content: restablece el documento a su estado original, por ejemplo, reseteando un formulario.

    206 Partial content: solo se ha enviado una parte del contenido.

    207 Multi-status: hay más códigos de respuesta que podrían ser 2xx, 3xx, 4xx o 5xx.

    208 Already reported: el cliente le dice al servidor que el mismo recurso ya se ha mencionado anteriormente.

    218 This is fine: uso no oficial de Apache.

    226 IM used: esto permite al servidor enviar cambios (diferencias) de recursos a los clientes.

    Cómo maneja Google los 2xx

    La mayoría de los 2xx permiten que se indexen las páginas. Sin embargo, los 204s se clasificarán como 404 soft (flexibles) y no se indexarán. 

    Los 404 soft también pueden ser URLs donde el servidor dice que todo está bien (200), pero el contenido de la página dice que no existe. El código debería haber sido un 404, pero el servidor se ha equivocado diciendo que no hay ningún problema. Esto también puede pasar en páginas con poco o ningún contenido.

    Puedes encontrar estos errores 404 soft en el informe de páginas en el Google Search Console.

    Los códigos de estado 3xx indican que el cliente aún tiene que completar alguna tarea pendiente antes de que la solicitud pueda tener éxito.

    300 Multiple choices: hay más de una respuesta posible y seguramente tengas que elegir una de ellas.

    301 Moved permanently: el antiguo recurso ahora se redirige al nuevo recurso.

    302 Found: el recurso anterior ahora se redirige, temporalmente, al nuevo recurso.

    302 Moved temporarily: el recurso anterior ahora se redirige temporalmente al nuevo recurso.

    303 See other: esta es otra redirección que indica que el recurso puede encontrarse en otro lugar.

    304 Not modified: la página no ha sido modificada. Normalmente, se utiliza para el almacenamiento en caché.

    305 Use proxy: el recurso solicitado sólo está disponible si usas un proxy.

    306 Switch proxy: las próximas solicitudes deben usar un proxy especificado. Este código ya no se usa.

    307 Temporal redirect: tiene la misma funcionalidad que una redirección 302, pero ésta no puede cambiar entre POST y GET.

    307 HSTS policy: Obliga al cliente a utilizar HTTPS al realizar solicitudes en vez de HTTP.

    308 Permanent redirect: misma funcionalidad que la redirección 301, excepto que éste no puede cambiar entre POST y GET.

    Cómo maneja Google los 3xx

    301 y 302 son señales de canonicalización. Transmiten PageRank y ayudan a determinar qué URL se muestra en el índice de Google. Un 301 se consolida hacia adelante a la URL nueva y un 302 se consolida hacia atrás a la URL antigua. Si dejas un 302 mucho tiempo, o si la URL a la que se redirige ya existe, un 302 puede tratarse como un 301 y consolidarse hacia adelante en su lugar. 

    Los 302 también pueden usarse para redirigir a los usuarios a páginas de inicio específicas con un idioma o país/idioma determinado, pero no se debe usar la misma lógica con páginas más “profundas”.

    Los 303 tienen un tratamiento indefinido por parte de Google. A veces pueden ser tratados como un 301 o un 302, dependiendo de cómo funcionen.

    Los 307s tienen dos casos distintos. En los casos en los que se trate de una redirección temporal, se tratará igual que un 302 y se intentará consolidar hacia atrás. Cuando los servidores web requieren que los clientes solo usen conexiones HTTPS (política HSTS), Google no verá el 307 porque estará almacenado en la caché del navegador. El primer impacto (sin caché) tendrá un código de respuesta del servidor, que probablemente sea 301 o 302. Pero el navegador mostrará un 307 para solicitudes posteriores.

    Los 308 se tratan igual que los 301 y se consolidan hacia adelante.

    Google seguirá hasta 10 saltos en una cadena de redirección. Por lo general, sigue cinco saltos en una sesión y en la siguiente sesión se reanuda donde lo dejó. Después de esto, es posible que las señales no se consoliden en las páginas redirigidas.

    Puedes encontrar estas cadenas de redireccionamiento en el Site Audit de Ahrefs o en nuestras herramientas gratuitas en el Webmaster Tools de Ahrefs.

    Los códigos de estado de respuesta 4xx significan que el cliente tiene un error. El error, generalmente, se explica en la respuesta.

    400 Bad request: hay algo que está mal con la solicitud del cliente. Es posible que tenga un formato incorrecto, que no sea válido o que sea demasiado grande. El servidor no puede entender la solicitud.

    401 Unauthorized: el cliente no se identificó ni se verificó a sí mismo cuando fue necesario.

    402 Payment required: ahora mismo no tiene un uso oficial. Está reservado para el futuro, para algún tipo de sistema de pago digital. Algunos comerciantes usan esto con motivos propios. Por ejemplo, Shopify lo usa cuando una tienda no ha pagado sus tarifas y Stripe lo usa para pagos potencialmente fraudulentos.

    403 Forbidden: el cliente es conocido pero no tiene derechos de acceso.

    404 Not Found: no se encuentra el recurso solicitado.

    405 Method not allowed: el método de solicitud utilizado no es compatible. Por ejemplo, un formulario necesita usar POST pero usa GET en su lugar.

    406 Not acceptable: el servidor no puede cumplir con el encabezado de aceptación solicitado por el cliente.

    407 Proxy authentication required: la autenticación debe realizarse a través de un proxy.

    408 Request timeout: el servidor ha agotado el tiempo de espera o ha decidido terminar la conexión.

    409 Conflict: la solicitud entra en conflicto con el estado del servidor.

    410 Gone: parecido al 404 donde no se encuentra la solicitud, pero también dice que no estará disponible de nuevo.

    411 Length required: la solicitud no contiene un campo de longitud de contenido cuando se requiere.

    412 Precondition failed: el cliente pone una condición en la solicitud que el servidor no cumple.

    413 Payload too large: la solicitud es más grande de lo que permite el servidor.

    414 URI too long: el URI (Uniform Resource Identifier) solicitado es más largo de lo que permite el servidor.

    415 Unsupported media type: el servidor no admite el formato solicitado.

    416 Range not satisfiable: el cliente solicita una parte del archivo que el servidor no puede proporcionar. Por ejemplo, solicita una parte del archivo que va más allá de donde realmente termina el archivo.

    417 Expectation failed: el servidor no puede cumplir la expectativa indicada en el encabezado de solicitud “Esperar”.

    418 I’m a Teapot: Ocurre cuando intentas preparar café en una tetera. Esto comenzó como una broma en el April Fools’ Day en 1998, pero en realidad está estandarizado. Hoy en día todos los dispositivos son inteligentes, así que, potencialmente, se podría usar.

    419 Page expired: uso no oficial de Laravel Framework.

    420 Method failure: uso no oficial de Spring Framework.

    420 Enhance your calm: uso no oficial de Twitter.

    421 Misdirected request: el servidor al que se envió la solicitud no puede responder.

    422 Unprocessable entity: hay errores semánticos en la solicitud.

    423 Locked: el recurso solicitado está bloqueado.

    424 Failed dependency: este fallo ocurre porque se necesita otra solicitud que también ha dado fallo.

    425 Too early: el servidor no está dispuesto a procesar la solicitud en el momento. Es probable que vuelva a presentarse más tarde.

    426 Upgrade required: el servidor rechaza la solicitud hasta que el cliente utilice un protocolo actualizado. Lo que se debe actualizar se indica en el encabezado “Actualizar”.

    428 Precondition required: el servidor requiere que la solicitud sea condicional. 

    429 Demasiadas solicitudes: esta es una forma de limitación de velocidad para proteger el servidor porque el cliente envió demasiadas solicitudes al servidor demasiado rápido.

    430 Request header fields too large: los campos del encabezado de solicitud son demasiado grandes. Uso no oficial de Shopify.

    431 Request header fields too large: el servidor no procesará la solicitud porque los campos del encabezado son demasiado grandes.

    440 Login Time-out: tiempo de espera de inicio de sesión. Uso no oficial por parte de IIS.

    444 No response: sin respuesta. Uso no oficial de nginx.

    449 Retry with: uso no oficial de IIS.

    450 Blocked by Windows Parental Controls: bloqueado por los controles parentales de Windows. Uso no oficial de Microsoft.

    451 Unavailable for legal reasons: está bloqueado por algún tipo de motivo legal. A veces son bloqueos a nivel nacional por cada país. Por ejemplo, noticias o videos bloqueados, debido a privacidad o licencias. Puedes encontrarlo como “eliminaciones de DMCA”, que es un código de referencia a la novela Fahrenheit 451.

    451 Redirect: Uso no oficial por parte de IIS.

    460: uso no oficial de AWS Elastic Load Balancer.

    463: uso no oficial de AWS Elastic Load Balancer.

    494 Request header too large: encabezado de solicitud es demasiado grande. Uso no oficial por parte de nginx.

    495 SSL certificate error: error de certificado SSL. Uso no oficial por parte de nginx.

    496 SSL Certificate required: se requiere un certificado SSL. Uso no oficial por parte de nginx.

    497 HTTP Request Sent to HTTPS Port: Solicitud HTTP enviada al puerto HTTPS. Uso no oficial de nginx.

    498 Invalid token: token no válido. Uso no oficial por parte de Esri.

    499 Client closed request: solicitud cerrada del cliente. Uso no oficial de nginx.

    499 Token Required: se requiere un token. Uso no oficial por parte de Esri.

    Cómo maneja Google los 4xx

    Los 4xxs harán que las páginas se eliminen del índice de Google. 

    Los 404 y 410 tienen un tratamiento similar. Ambos eliminan las páginas del índice, pero los 410 son un poco más rápidos. ¿En términos prácticos? Son más o menos lo mismo.

    Google utiliza los 421 para optar por no rastrear con HTTP/2.

    Los 429 son un poco especiales porque generalmente se tratan como errores del servidor y harán que Google ralentice el rastreo. Pero, llegado el momento, Google eliminará estas páginas del índice también.

    Puedes encontrar errores 4xx en el Site Audit o en nuestras herramientas gratuitas del Webmaster Tools de Ahrefs.

    Otra cosa que quizás quieras verificar es si alguno de estos 404s tiene enlaces hacia ellos. Si los enlaces apuntan a una página 404, “no cuentan” para tu web. Lo más probable es que solo tengas que redirigir cada una de estas páginas con un 301 a una página relevante. Aquí te mostramos cómo encontrar estas oportunidades:

    1. Pega tu dominio en el Site Explorer (también accesible de forma gratuita en el Webmaster Tools de Ahrefs)
    2. Dirígete al informe “Mejor por enlaces”
    3. Agrega un filtro de respuesta HTTP “404 not found”

    Normalmente lo ordeno por “Referente dominios”.

    Los códigos de estado de respuesta 5xx significan que el servidor tiene un error, y sabe que no puede llevar a cabo la solicitud. La respuesta contendrá una explicación del error.

    500 Internal server error: el servidor encuentra algún tipo de problema y no tiene un código de error más específico.

    501 Not implemented: el servidor no admite el método de solicitud.

    502 Bad gateway: el servidor se encontraba en medio de una solicitud y se utilizó para el enrutamiento. Pero recibió una mala respuesta del servidor al que estaba enrutando.

    503 Service unavailable: el servidor está sobrecargado o inactivo por mantenimiento y no puede manejar la solicitud por el momento. Probablemente, volverá a funcionar pronto.

    504 Gateway timeout: el servidor estaba en medio de una solicitud y se utilizó para el enrutamiento, pero no ha recibido una respuesta oportuna del servidor al que estaba enrutando.

    505 HTTP version not supported: el servidor no admite la versión del protocolo HTTP en la solicitud.

    506 Variant also negotiates: permite que el cliente obtenga la mejor variante de un recurso cuando el servidor tiene múltiples variantes.

    507 Insufficient storage: el servidor no puede almacenar lo que necesita almacenar para completar la solicitud.

    508 Loop detected: el servidor encontró un bucle infinito al intentar procesar la solicitud.

    509 Bandwidth limit exceeded: límite de ancho de banda superado. Uso no oficial de Apache y cPanel.

    510 Not extended: se requieren más extensiones a la solicitud antes de que el servidor la cumpla.

    511 Network authentication required: el cliente necesita autenticación antes de que el servidor permita el acceso a la red.

    520 Web server returned an unknown error: el servidor web devuelve un error desconocido. Uso no oficial de Cloudflare.

    521 Web server is down: el servidor web se ha caído. Uso no oficial de Cloudflare.

    522 Connection timed out: la conexión ha expirado. Uso no oficial de Cloudflare.

    523 Origin is unreachable: el origen es inalcanzable. Uso no oficial de Cloudflare.

    524 A timeout occurred: se ha producido un tiempo de espera. Uso no oficial de Cloudflare.

    525 SSL Handshake Failed: uso no oficial de Cloudflare.

    526 Invalid SSL Certificate: certificado SSL inválido. Uso no oficial de Cloudflare.

    527 Railgun error: uso no oficial de Cloudflare.

    529 Site is overloaded: el sitio está sobrecargado. Uso no oficial de Qualys.

    530: Uso no oficial por parte de Cloudflare.

    530 Site is frozen: la web está congelada. Uso no oficial de Pantheon.

    561 Unauthorized: no autorizado. Uso no oficial de AWS Elastic Load Balancer.

    598 (Informal convention) Network read timeout error: error de tiempo de espera de lectura de red. Uso no oficial por parte de algunos servidores proxy HTTP.

    Cómo maneja Google los 5xx

    Los errores 5xx ralentizan el rastreo y, con el tiempo, las páginas se terminan eliminando del índice de Google. Puedes encontrar los errores 5xx en el Site Audit o en el Webmaster Tools de Ahrefs. Dicho esto, pueden ser distintos de los 5xx que ve Google. Dado que estos son errores del servidor, es posible que no siempre estén presentes.