Códigos HTTP: ¿qué son y cuántos existen? Conócelos aquí

Aprende a hacer una auditoría SEO con nuestra guía gratuita
Maria Coppola
Maria Coppola

Actualizado:

Publicado:

Los códigos HTTP juegan un papel crucial en la comunicación entre los servidores y los navegadores. Estos códigos de estado, que forman parte del Protocolo de Transferencia de Hipertexto (HTTP), son las respuestas que los servidores web envían a los navegadores cada vez que se realiza una solicitud.

Códigos HTTPS qué son

Entender estos códigos es esencial no solo para los desarrolladores y administradores de sitios web, sino también para cualquier persona interesada en mejorar la experiencia del usuario y optimizar el rendimiento de su sitio. En este artículo, exploraremos en detalle qué son los códigos HTTP, cómo interpretarlos y su impacto en el SEO y la usabilidad de los sitios web.

Cómo llevar a cabo una auditoría de SEO

Aprende a realizar auditorías de SEO y mejorar tu presencia en línea.

Más información

    Descargar ahora

    Todos los campos son obligatorios.

    ¡Listo!

    Haz clic en este enlace para acceder a este recurso en cualquier momento.

     

    Cómo se crearon los códigos HTTP

    Los códigos HTTP (HyperText Transfer Protocol) se crearon como parte de la especificación del protocolo HTTP, que es el fundamento de la comunicación en la web.

    Aquí te explico el proceso y los actores involucrados en su desarrollo:

    1. Origen del HTTP

    El protocolo HTTP fue desarrollado por Tim Berners-Lee y su equipo en el CERN (Organización Europea para la Investigación Nuclear) a fines de los años 80 y principios de los 90. HTTP se diseñó para permitir la transferencia de documentos de hipertexto (es decir, páginas web) a través de Internet.

    2. Necesidad de códigos de estado

    En el diseño de HTTP, era crucial tener un mecanismo para que el servidor pudiera informar al cliente (por ejemplo, un navegador web) sobre el estado de la solicitud realizada. Estos mensajes de estado ayudan a determinar si la solicitud fue exitosa, si hubo algún error o si se necesita alguna acción adicional.

    3. Primera versión de HTTP

    • HTTP/0.9: la primera versión, HTTP/0.9, era muy simple y no incluía códigos de estado.
    • HTTP/1.0: con la evolución a HTTP/1.0, se introdujo una estructura más robusta, que incluyó los códigos de estado. HTTP/1.0 fue documentado en el RFC 1945, publicado en 1996.

    4. Desarrollo de códigos de estado HTTP

    La especificación de los códigos de estado fue diseñada para proporcionar información clara sobre el resultado de las solicitudes HTTP. Los códigos se dividen en cinco categorías principales:

    • 1xx (informativos): indican que la solicitud fue recibida y el proceso continúa.
    • 2xx (éxito): indican que la solicitud fue recibida, comprendida y aceptada correctamente.
    • 3xx (redirección): indican que se deben tomar acciones adicionales para completar la solicitud.
    • 4xx (errores del cliente): indican que hubo un problema con la solicitud del cliente.
    • 5xx (errores del servidor): indican que el servidor falló al cumplir una solicitud aparentemente válida.

    5. RFC y estandarización

    La estandarización de los códigos de estado y del propio protocolo HTTP fue llevada a cabo por el IETF (Internet Engineering Task Force) a través de una serie de RFCs (Request for Comments). Algunos RFCs clave son:

    • RFC 1945: HTTP/1.0
    • RFC 2616: HTTP/1.1, publicado en 1999, que refinó y expandió muchos aspectos de HTTP, incluidos los códigos de estado.
    • RFC 7231: parte de una serie de actualizaciones a HTTP/1.1, publicada en 2014, que proporciona una especificación más detallada y clara sobre los códigos de estado y otros aspectos del protocolo.

    6. Evolución y versiones posteriores

    • HTTP/2: publicado en el RFC 7540 en 2015, que mejoró la eficiencia y el rendimiento del protocolo, aunque los códigos de estado HTTP básicos permanecieron sin cambios significativos.
    • HTTP/3: basado en QUIC, es una versión más reciente que continúa mejorando la velocidad y seguridad de las conexiones, pero sigue utilizando los mismos códigos de estado HTTP.
    “Los avances en los protocolos HTTP son esenciales para mejorar la velocidad y eficiencia de la web, haciendo posible experiencias de usuario más rápidas y fluidas”.
    Steve Souders
    Autor de "High Performance Web Sites" y Ex Jefe de Rendimiento Web en Google.

    Códigos HTTP 200

    El código de estado HTTP 200 pertenece a la categoría 2xx, que indica que la solicitud fue recibida, comprendida y aceptada correctamente. Específicamente, el código 200 significa "OK".

    Aquí te detallo su significado y algunos aspectos relacionados:

    HTTP 200 OK

    • 200 OK: este código de estado indica que la solicitud ha sido exitosa. La información devuelta con la respuesta depende del método HTTP utilizado:
    • GET: la respuesta contiene el recurso solicitado.
    • HEAD: la respuesta contiene los encabezados solicitados, sin el cuerpo del recurso.
    • POST: la respuesta contiene la entidad resultante de la acción realizada por el servidor.
    • PUT: la respuesta contiene la entidad resultante de la acción realizada por el servidor.
    • DELETE: el recurso ha sido eliminado correctamente, aunque a veces puede devolver un mensaje adicional.
    • OPTIONS: la respuesta contiene las opciones de comunicación disponibles para el recurso.
    • TRACE: la respuesta contiene el mensaje de solicitud recibido por el servidor.

    Ejemplos de uso

    1. GET Request

    Código http 200

    2. POST Request

    • Solicitud: un cliente envía datos a un servidor para que se procesen, como un formulario de contacto.

    • Respuesta: el servidor procesa los datos y devuelve una confirmación de éxito con un código 200 OK.

    Código http request

    Características

    En métodos como GET y HEAD, la solicitud puede repetirse sin efectos adicionales (idempotencia). Es uno de los códigos más comunes en las respuestas HTTP y se utiliza para indicar éxito en una amplia variedad de situaciones.

    Importancia en el desarrollo web

    Un código 200 OK es una indicación de que todo está funcionando como se esperaba. Los desarrolladores buscan este código para asegurarse de que las operaciones web se completan correctamente.

    En respuesta a una solicitud de página web es esencial para la indexación de motores de búsqueda y para proporcionar una buena experiencia de usuario.
     

    “Comprender los códigos de estado HTTP es fundamental para cualquier desarrollador web. Estos códigos son la clave para diagnosticar y resolver problemas en la comunicación entre el navegador y el servidor”.
    Eric Lawrence
    Ingeniero Principal de Software en Microsoft y Desarrollador de Fiddler

    Códigos HTTP 300

    Los códigos HTTP de la serie 300 indican redirecciones. Estos códigos informan al cliente que necesita realizar acciones adicionales para completar la solicitud. Aquí tienes una descripción de los códigos más comunes de esta serie:

    1. 300 Multiple Choices

    Este código indica que hay varias opciones para el recurso solicitado y el cliente puede seleccionar una de ellas. El servidor puede proporcionar una lista de opciones en la respuesta.

    2. 301 Moved Permanently

    Este código indica que el recurso solicitado ha sido movido de manera permanente a una nueva URL. El cliente debe utilizar la nueva URL en futuras solicitudes. El servidor proporciona la nueva URL en el encabezado Location.

    3. 302 Found

    Indica que el recurso solicitado se encuentra temporalmente en una URL diferente. El cliente debe utilizar la URL proporcionada en el encabezado Location para esta solicitud, pero la URL original debe usarse para futuras solicitudes.

    4. 303 See Other

    Este código indica que la respuesta a la solicitud puede encontrarse en una URL diferente que debe ser recuperada utilizando un método GET. Es utilizado comúnmente en respuesta a solicitudes POST que resultan en la creación de un recurso.

    5. 304 Not Modified

    Indica que el recurso no ha sido modificado desde la última solicitud. Esto se usa para optimizar la transferencia de recursos al evitar la descarga de datos redundantes.

    6. 307 Temporary Redirect

    Este código indica que el recurso solicitado se encuentra temporalmente en una URL diferente. A diferencia del 302, el método HTTP utilizado en la solicitud original debe ser utilizado en la nueva solicitud a la URL proporcionada.

    7. 308 Permanent Redirect

    Indica que el recurso solicitado ha sido movido de manera permanente a una nueva URL. A diferencia del 301, el método HTTP utilizado en la solicitud original debe ser utilizado en la nueva solicitud a la URL proporcionada.

    Estos códigos de redirección son fundamentales para manejar cambios en la estructura de URLs y para optimizar la navegación y transferencia de recursos en la web.

    “El dominio de los códigos HTTP y el rendimiento web son fundamentales para cualquier desarrollador que busque crear experiencias web rápidas, accesibles y de alta calidad”.
    Jeffrey Zeldman
    Pionero del Diseño Web y Fundador de A List Apart

    Códigos HTTP 400

    Los códigos HTTP de la serie 400 indican errores del cliente. Estos códigos informan al cliente que la solicitud contiene un error o es inválida.

    Aquí tienes una descripción de los códigos más comunes de esta serie:

    Descripción de los códigos más comunes HTTP 400
    1. 400 Bad Request: el servidor no puede o no procesará la solicitud debido a un error del cliente (por ejemplo, sintaxis malformada, solicitud engañosa o tamaño de la solicitud excesivo).
    2. 401 Unauthorized: la solicitud requiere autenticación del usuario. El servidor debe incluir un campo de encabezado WWW-Authenticate que contiene el desafío aplicable para el recurso solicitado.
    3. 403 Forbidden: el servidor entiende la solicitud, pero se niega a autorizarla. Esto es diferente de un 401, ya que la autenticación no haría ninguna diferencia.
    4. 404 Not Found: el servidor no puede encontrar el recurso solicitado. Es común cuando una URL está mal escrita o el recurso ha sido eliminado.
    5. 405 Method Not Allowed: el método especificado en la solicitud es conocido por el servidor pero no está permitido para el recurso identificado.
    6. 406 Not Acceptable: el servidor no puede generar una respuesta que sea aceptable según los encabezados de aceptación enviados en la solicitud.
    7. 407 Proxy Authentication Required: indica que el cliente debe autenticarse con el proxy antes de que la solicitud pueda ser procesada. Similar a un 401, pero para proxies.
    8. 408 Request Timeout: no recibió una solicitud completa del cliente dentro del tiempo que estaba dispuesto a esperar.
    9. 409 Conflict: este código indica que la solicitud no pudo ser completada debido a un conflicto con el estado actual del recurso.
    10. 410 Gone: el recurso solicitado ya no está disponible y no lo estará nuevamente. Se utiliza para recursos que se han eliminado permanentemente.
    11. 411 Length Required: el servidor rechaza la solicitud porque el encabezado Content-Length no está definido y el servidor lo requiere.
    12. 412 Precondition Failed: una de las condiciones previas especificadas en los encabezados de la solicitud evaluó como falsa cuando fue probada en el servidor.
    13. 413 Payload Too Large: la entidad de la solicitud es más grande de lo que el servidor está dispuesto o puede procesar.
    14. 414 URI Too Long: el URI proporcionado era demasiado largo para ser procesado por el servidor.
    15. 415 Unsupported Media Type: el formato de la entidad de la solicitud no es compatible con el recurso solicitado o el servidor no está dispuesto a procesarlo.


    Códigos HTTP 500

    Los códigos HTTP de la serie 500 indican errores del servidor. Estos códigos informan al cliente que el servidor encontró una condición que le impidió cumplir con la solicitud.

    Aquí te dejo una descripción de los códigos más comunes de esta serie:

    1. 500 Internal Server Error: el servidor encontró una condición inesperada que le impidió cumplir con la solicitud. Es un error genérico utilizado cuando no se dispone de un mensaje de error más específico.
    2. 501 Not Implemented: el servidor no reconoce el método de solicitud o no tiene la capacidad de cumplir con la solicitud. Por ejemplo, un servidor que no soporta el método PUT puede devolver un 501.
    3. 502 Bad Gateway: este código indica que el servidor, actuando como puerta de enlace o proxy, recibió una respuesta inválida del servidor de origen.
    4. 503 Service Unavailable: el servidor no está disponible para manejar la solicitud, generalmente debido a mantenimiento o sobrecarga. La respuesta puede contener un encabezado Retry-After que indica cuánto tiempo esperar antes de volver a intentar la solicitud.
    5. 504 Gateway Timeout: indica que el servidor, actuando como puerta de enlace o proxy, no recibió una respuesta a tiempo del servidor de origen.
    6. 505 HTTP Version Not Supported: el servidor no admite la versión del protocolo HTTP utilizada en la solicitud.
    7. 506 Variant Also Negotiates: este código indica que el servidor tiene un error de configuración interna: la negociación de contenido transparente para el recurso resulta en una referencia circular.
    8. 507 Insufficient Storage: el servidor no puede almacenar la representación necesaria para completar la solicitud.
    9. 508 Loop Detected: el servidor detectó un bucle infinito al procesar una solicitud con WebDAV.
    10. 510 Not Extended: indica que se requieren extensiones adicionales para que el servidor cumpla con la solicitud.
    11. 511 Network Authentication Required: indica que el cliente necesita autenticarse para ganar acceso a la red.

    Solución de problemas con códigos HTTP: guía para usuarios y desarrolladores

    Aquí tienes una guía completa para solucionar problemas con códigos HTTP, útil tanto para usuarios como para desarrolladores:

    Códigos de Éxito 

    Estos códigos indican que la solicitud fue recibida, entendida y procesada correctamente por el servidor.

    No requieren solución

    1. 200 OK: Todo funcionó correctamente.
    2. 201 Created: un recurso ha sido creado exitosamente.
    3. 204 No Content: la solicitud fue exitosa pero no hay contenido que devolver.
    4. Códigos de Redirección (3xx)
    5. Indican que se necesita una acción adicional por parte del cliente para completar la solicitud.

    Problemas comunes y soluciones

    • 301 Moved Permanently: la URL ha cambiado permanentemente.
    • Solución: actualiza tus marcadores o enlaces para apuntar a la nueva URL.
    • 302 Found: la URL ha cambiado temporalmente.
    • Solución: permite que tu navegador siga la redirección automáticamente.
    • 304 Not Modified: el recurso no ha cambiado desde la última solicitud.
    • Solución: esto no es un error. Permite que el navegador cargue el recurso desde su caché.

    Códigos de error del cliente (400)

    Indican que hay un problema con la solicitud enviada por el cliente.

    • 400 Bad Request: la solicitud está malformada. Solución: verifica la sintaxis de tu solicitud. Asegúrate de que todos los parámetros y encabezados sean correctos.
    • 401 Unauthorized: se requiere autenticación. Solución: asegúrate de haber iniciado sesión correctamente. Verifica tus credenciales.
    • 403 Forbidden: no tienes permiso para acceder al recurso. Solución: verifica si tienes los permisos necesarios. Contacta al administrador del sitio si crees que esto es un error.
    • 404 Not Found: el recurso no se encontró. Solución: verifica la URL por errores tipográficos. Asegúrate de que el recurso existe.
    • 405 Method Not Allowed: el método HTTP no está permitido. Solución: asegúrate de estar usando el método correcto (GET, POST, etc.) para la solicitud.

    Códigos de Error del Servidor (500)

    Indican que el servidor falló al cumplir con una solicitud válida.

    • 500 Internal Server Error: error genérico del servidor. Intenta recargar la página. Si el problema persiste, contacta al administrador del sitio.
    • 501 Not Implemented: el servidor no reconoce el método de solicitud. Asegúrate de usar un método HTTP soportado por el servidor.
    • 502 Bad Gateway: El servidor recibió una respuesta inválida del servidor upstream. Intenta recargar la página. Si el problema persiste, contacta al administrador del sitio.
    • 503 Service Unavailable: El servidor no está disponible temporalmente. Intenta recargar la página después de unos minutos. El servidor puede estar sobrecargado o en mantenimiento.
    • 504 Gateway Timeout: El servidor no recibió una respuesta a tiempo del servidor upstream. Intenta recargar la página. Si el problema persiste, contacta al administrador del sitio.

    Códigos HTTP y SEO: impacto en el posicionamiento de tu sitio web

    Los códigos HTTP tienen un impacto significativo en el SEO (Search Engine Optimization) y el posicionamiento de tu sitio web en los motores de búsqueda.

    Un código 200 OK indica que la solicitud fue exitosa y que la página se carga correctamente, lo que es esencial para una buena indexación por parte de los motores de búsqueda.

    Por otro lado, los códigos de redirección, como el 301 Moved Permanently, son cruciales para mantener el valor de SEO cuando cambias la estructura de tu sitio o mueves contenido, asegurando que el valor de la antigua URL se transfiera a la nueva. Sin embargo, un uso incorrecto de redirecciones temporales 302 puede confundir a los motores de búsqueda y afectar negativamente el posicionamiento.

    Los errores del cliente, como el 404 Not Found, pueden resultar en una mala experiencia de usuario y pérdida de tráfico, ya que las páginas inexistentes no son indexadas. Del mismo modo, los errores del servidor, como el 500 Internal Server Error, pueden impedir que los motores de búsqueda accedan y rastreen tu sitio, afectando negativamente la indexación y el posicionamiento.

    Es crucial monitorear y gestionar adecuadamente estos códigos para asegurar una buena salud técnica del sitio y optimizar su rendimiento SEO.

    Mejores prácticas para SEO y códigos HTTP
    1. Monitoreo regular: utiliza herramientas como Google Search Console y analítica web para monitorear los códigos de estado HTTP.

    2. Redirecciones correctas: utiliza redirecciones 301 para cambios permanentes y 302 para cambios temporales.

    3. Manejo de errores: implementa páginas de error personalizadas (404, 500) con enlaces a contenido relevante para mejorar la experiencia del usuario. Determina el periodo de comisión.

    4. Caché y validación: utiliza encabezados de caché y respuestas 304 para mejorar la eficiencia del rastreo.

    5. Pruebas y auditorías: realiza auditorías regulares de tu sitio para identificar y corregir enlaces rotos y errores del servidor.

    6. Contenido de alta calidad: asegúrate de que el contenido de tu sitio sea accesible y de alta calidad para maximizar los beneficios de SEO.


    Diferencias entre códigos HTTP y otros protocolos de red

    Los códigos HTTP y otros protocolos de red tienen funciones y usos distintos en la comunicación y transferencia de datos a través de redes. Los códigos de estado HTTP (HyperText Transfer Protocol) son respuestas estándar emitidas por los servidores web en respuesta a las solicitudes HTTP realizadas por los navegadores o clientes HTTP, y estos códigos indican el resultado de la solicitud realizada. Su función principal es comunicar el estado de la solicitud HTTP, informando si fue exitosa, si hubo redirecciones, errores del cliente o errores del servidor.

    Por ejemplo, los códigos 2xx indican éxito, como el 200 OK o el 201 Created; los 3xx indican redirección, como el 301 Moved Permanently o el 302 Found; los 4xx indican errores del cliente, como el 400 Bad Request o el 404 Not Found; y los 5xx indican errores del servidor, como el 500 Internal Server Error o el 502 Bad Gateway.

    Otros protocolos de red también tienen sus propios códigos de estado y funciones específicas.

    El FTP (File Transfer Protocol) es un protocolo estándar utilizado para transferir archivos entre un cliente y un servidor a través de una red. Su función principal es transferir archivos de manera eficiente y segura entre sistemas.

    Los códigos de estado FTP incluyen 1xx para acciones preliminares, 2xx para acciones completadas positivamente, 3xx para comandos aceptados que requieren más información, 4xx para errores temporales y 5xx para errores permanentes.

    El SMTP (Simple Mail Transfer Protocol) se utiliza para el envío de correos electrónicos a través de una red, facilitando el envío y la recepción de mensajes de correo electrónico. Los códigos de estado SMTP incluyen 2xx para éxito, 4xx para errores temporales y 5xx para errores permanentes.

    El DNS (Domain Name System) es un sistema que traduce nombres de dominio legibles por humanos a direcciones IP numéricas, resolviendo nombres de dominio en direcciones IP para que los navegadores web puedan cargar los recursos de Internet.

    Los códigos de respuesta DNS incluyen NOERROR para respuestas exitosas, NXDOMAIN para dominios inexistentes y SERVFAIL para errores en el servidor DNS al procesar la solicitud.

    Cada protocolo de red, ya sea HTTP, FTP, SMTP o DNS, está diseñado para manejar un tipo particular de comunicación y transferencia de datos en la red, asegurando que los diversos aspectos de la interacción en Internet funcionen de manera eficiente y efectiva.

    Mientras que los códigos HTTP son esenciales para la comunicación y el estado de las solicitudes web, otros protocolos tienen sus propios códigos de estado y funciones específicas, vitales para la transferencia de archivos, el envío de correos electrónicos y la resolución de nombres de dominio.

    Herramientas y recursos para monitorear y analizar códigos HTTP

    Monitorear y analizar códigos HTTP es esencial para mantener un sitio web en buen estado de salud y asegurar un buen rendimiento en términos de SEO y experiencia de usuario.

    Aquí te dejo una lista de herramientas y recursos útiles para esta tarea:

    1. Google Search Console

    Herramienta gratuita de Google que ayuda a monitorear y mantener la presencia de tu sitio web en los resultados de búsqueda de Google. Muestra los códigos de estado HTTP de las páginas rastreadas. Detecta errores de rastreo como 404 y otros códigos de error.

    search. console

    2. Google Analytics

    Herramienta de análisis web que proporciona datos detallados sobre el tráfico del sitio web. Permite configurar alertas personalizadas para detectar errores HTTP. Análisis de comportamiento del usuario en páginas con errores.

    Google Analytics

    3. Ahrefs Site Audit

    Herramienta de SEO que realiza auditorías completas del sitio web. Detecta enlaces rotos y redirecciones incorrectas. Proporciona informes detallados sobre códigos de estado HTTP.

    Ahrefs

    4. Screaming Frog SEO Spider

    Herramienta de escritorio que rastrea sitios web para analizar aspectos SEO y técnicos.
    Identifica códigos de estado HTTP para cada URL. Proporciona informes sobre redirecciones, errores del cliente y del servidor.

    Screamingfrog

    5. Semrush Site Audit

    Herramienta de SEO que ofrece auditorías exhaustivas del sitio web. Identifica y clasifica errores HTTP. Proporciona sugerencias de corrección y análisis de impacto.
    Semrush

    6. Pingdom

    Herramienta de monitoreo de sitios web que analiza el rendimiento y la disponibilidad. Monitorea la disponibilidad del sitio y detecta errores HTTP. Proporciona informes detallados sobre el rendimiento del sitio.

    Pingdom
    7. Uptrends

    Herramienta de monitoreo de rendimiento y disponibilidad del sitio web. Monitorea los códigos de estado HTTP y la disponibilidad. Ofrece alertas y análisis detallados.

    uptrends
    8. GTmetrix

    Herramienta que analiza la velocidad y el rendimiento del sitio web. Proporciona información sobre errores HTTP y problemas de rendimiento. Ofrece sugerencias de optimización.

    gtmetrix.com
    9. New Relic

    Plataforma de monitoreo de aplicaciones que proporciona información sobre el rendimiento de aplicaciones y sitios web. Monitorea errores HTTP y tiempos de respuesta. Ofrece análisis en tiempo real y alertas.

    New Relic

    Preguntas frecuentes sobre códigos HTTP

    A continuación encontrarás algunas de las preguntas más comunes que recibimos en la comunidad de HubSpot sobre este tema:

    Descarga gratis esta plantilla y aprende cómo llevar a cabo una auditoría de SEO
    Temas: SEO

    Descarga gratis la guía para realizar una auditoría SEO de tu web.

      CMS Hub is flexible for marketers, powerful for developers, and gives customers a personalized, secure experience

      START FREE OR GET A DEMO