Facebook Icon X Twitter Icon LinkedIn Icon LinkedIn Icon
Comprender las cabeceras HTTP y su impacto en el SEO

Comprender las cabeceras HTTP y su impacto en el SEO

Te aviso desde ya: ¡es un artículo aburrido y terriblemente técnico! Sin embargo, puede servirte de base para entender las cabeceras HTTP.

¿Listo para sumergirte en el corazón de la web? Agárrate fuerte, porque vamos a desmenuzar juntos las cabeceras HTTP. Imagínalas como los bastidores de una obra de teatro. Ves el escenario, los actores, la decoración, pero hay todo un mundo invisible detrás que hace posible el espectáculo. Bueno, las cabeceras HTTP son ese mundo invisible que permite a tu navegador comunicarse con el servidor y mostrar la página web que solicitas.

¡Sin estas indicaciones preciosas, es el caos! El navegador no sabría qué tipo de contenido recibe (HTML, imagen, video…), cómo tratarlo, ni siquiera si la página solicitada existe realmente. En esta sección, vamos a mirar juntos este lenguaje secreto, entender cómo funciona y por qué es esencial para el SEO. Y créeme, ¡es menos complicado de lo que parece!

¿Qué, sigues aquí? Ok, pero te lo advertí…

HTTP y SEO, un dúo inseparable para impulsar tu referenciamiento

A menudo se habla del SEO como el arte de optimizar el contenido visible de una página web. Pero el SEO técnico, se interesa por todo lo que sucede entre bastidores, y ahí es donde entran en juego las cabeceras HTTP. Son un poco el “director de orquesta” silencioso, garantizando una comunicación fluida y eficaz entre el servidor y el navegador.

¿Por qué son tan importantes? Porque influyen directamente en la forma en que los motores de búsqueda como Google exploran, indexan y comprenden tu sitio.

Una configuración correcta de las cabeceras HTTP puede mejorar considerablemente el rendimiento de tu sitio, su accesibilidad para los robots de los motores de búsqueda y, por lo tanto, su posicionamiento en los resultados de búsqueda. ¡Optimizar tus cabeceras HTTP es como dar un impulso a tu estrategia SEO!

Y si pensabas que era solo un detalle técnico, te equivocas.

Comprender el protocolo HTTP: los fundamentos de la web

Ahora que hemos metido el pie en el plato y que tenemos una idea de lo que son las cabeceras HTTP, es hora de ir más lejos.

¡Vas a sufrir, pero es por tu bien!

Definición simple de las cabeceras HTTP: el lenguaje secreto entre el servidor y el navegador

Imagina que pides un café en un país extranjero. Usas un idioma que el barista no entiende. El pedido no pasa. Las cabeceras HTTP son algo parecido.

Son el lenguaje que tu navegador (Chrome, Firefox, Safari…) usa para comunicarse con el servidor web que aloja el sitio que quieres visitar. Son líneas de texto, incluidas en cada solicitud y respuesta HTTP, que proporcionan información esencial sobre la naturaleza de la solicitud, el tipo de contenido intercambiado, y muchas otras cosas más.

Cabeceras HTTP: comunicación web.

Permiten que el servidor y el navegador se entiendan y funcionen juntos armoniosamente.

Anatomía de una cabecera HTTP

Una cabecera HTTP está compuesta de varios elementos, un poco como una carta con un encabezado, un cuerpo de texto y una firma. Cada línea de una cabecera HTTP sigue un formato preciso: Nombre de la cabecera: Valor. El nombre de la cabecera indica el tipo de información transmitida, y el valor precisa esta información.

Las cabeceras de solicitud: lo que el navegador pide

Son las informaciones que tu navegador envía al servidor cuando solicita una página web, una imagen o cualquier otro recurso. Entre las más importantes, encontramos:

  • User-Agent: Indica el navegador y el sistema operativo utilizados. El servidor puede adaptar el contenido en función de estas informaciones.
  • Accept: Precisa los tipos de contenido que el navegador es capaz de comprender (HTML, CSS, JavaScript, imágenes…).
  • Accept-Language: Indica el idioma preferido del internauta. El servidor puede así proponer una versión del sitio en este idioma si existe.

Las cabeceras de respuesta: lo que el servidor devuelve

Son las informaciones que el servidor envía de vuelta al navegador, al mismo tiempo que el contenido solicitado. Son tan importantes como las cabeceras de solicitud.

  • Content-Type: Indica el tipo de contenido devuelto (por ejemplo, text/html para una página HTML, image/jpeg para una imagen JPEG). Es importante para que el navegador sepa cómo interpretar los datos recibidos.
  • Status: El código de estado HTTP. Es un código numérico que indica si la solicitud tuvo éxito o no. Los códigos 200 indican un éxito, los códigos 300 redirecciones, los códigos 400 errores del cliente (como una página no encontrada – 404), y los códigos 500 errores del servidor. Un código 410 indica que la página ya no existe y ha sido voluntariamente eliminada.
  • Cache-Control: Determina cómo el navegador y los servidores cache pueden almacenar en caché el contenido. Una buena gestión de la caché mejora considerablemente el tiempo de carga de las páginas.
  • X-Robots-Tag: Permite controlar la indexación de una página web por los robots de los motores de búsqueda. Esta cabecera HTTP permite indicar a los robots de los motores de búsqueda si una página debe ser indexada (index) o no (noindex), seguida (follow) o no (nofollow). Es una alternativa a la etiqueta meta robots en el código HTML.

Llamo especialmente tu atención sobre la X-Robots-Tag, que tiene un impacto directo en la indexación de las páginas y el seguimiento o no de los enlaces: y para recordar, ¡NUNCA se pone nofollow internamente!

Cabeceras HTTP: Content-Type, Status, Cache, Robots

El ciclo de vida de una solicitud HTTP: de la petición a la respuesta

Imagina el ciclo de vida de una solicitud HTTP como un diálogo. Un diálogo entre tu navegador y el servidor que aloja el sitio web que quieres consultar. Es un intercambio constante de mensajes, de peticiones y respuestas.

  1. La solicitud: Todo comienza cuando escribes una URL en tu navegador y presionas Enter. Tu navegador entonces envía una solicitud HTTP al servidor correspondiente a esta URL. Esta solicitud contiene cabeceras, como hemos visto, que dan indicaciones sobre lo que buscas.
  2. El procesamiento: El servidor recibe la solicitud, la analiza y procesa la petición. Busca el recurso solicitado (la página web, la imagen…) y prepara una respuesta.
  3. La respuesta: El servidor envía una respuesta HTTP a tu navegador. Esta respuesta también contiene cabeceras, así como el contenido solicitado (el código HTML, la imagen…). El código HTTP está incluido en esta respuesta.
  4. La visualización: Tu navegador recibe la respuesta, la analiza y muestra el contenido. Utiliza las cabeceras de la respuesta para saber cómo interpretar el contenido (por ejemplo, si se trata de una página HTML, una imagen, un video…).

Este ciclo se repite cada vez que navegas por la web.

Ahora, vamos a ver concretamente cómo estas cabeceras HTTP pueden influir en tu SEO. ¡Agárrate, se pone interesante!

Las cabeceras HTTP esenciales para el SEO y su impacto

Ahora que tienes una buena visión de lo que son las cabeceras HTTP y cómo funcionan, es hora de pasar a lo serio: su impacto en el SEO.

Estas pequeñas líneas de código pueden parecer insignificantes, pero tienen un poder inmenso sobre la forma en que los motores de búsqueda comprenden, indexan y clasifican tu sitio web. Pueden impulsar tu referenciamiento natural o, por el contrario, sabotearlo completamente. Imagínalas como los cimientos invisibles de tu casa digital: si son sólidos, todo lo demás se mantiene en pie.

¡Si son frágiles, cuidado con la catástrofe!

La cabecera HTTP status: comprender los códigos de estado y evitar los errores perjudiciales para el SEO

La cabecera HTTP Status es un poco el boletín de salud de tu página web. Indica si todo salió bien durante la solicitud, o si hubo un problema.

Estos códigos de estado, representados por números (200, 301, 404, 500…), son súper importantes para los motores de búsqueda.

Un código de error puede señalar una página inaccesible, una redirección mal configurada o un problema del servidor. Tantas señales negativas que pueden impactar tu referenciamiento. Por lo tanto, es vital entenderlos y corregirlos rápidamente.

La cabecera HTTP content-type: indicar el tipo de contenido y asegurar una buena interpretación por el navegador y los robots de los motores de búsqueda

La cabecera Content-Type es la etiqueta que permite identificar el tipo de contenido que envías: una página HTML, una imagen JPEG, un archivo CSS, etc. Es esencial para que el navegador y los robots de los motores de búsqueda sepan cómo interpretar los datos y mostrarlos correctamente. Imagina que envías una carta sin indicar la dirección: corre el riesgo de no llegar nunca a su destino. Una cabecera Content-Type mal configurada puede impedir la indexación de tu página o mostrar un contenido ilegible, lo que sería desastroso para tu SEO.

Content-Type: Indica el tipo de contenido.

La cabecera HTTP cache-control: optimizar el almacenamiento en caché para mejorar la velocidad de carga y la experiencia de usuario (UX)

La cabecera Cache-Control es tu aliada para mejorar la velocidad de carga de tu sitio web. Indica al navegador y a los servidores cache cómo almacenar en caché los recursos (imágenes, archivos CSS, JavaScript…) para evitar volver a descargarlos en cada visita. Una buena estrategia de almacenamiento en caché puede reducir considerablemente el tiempo de carga de las páginas, lo que es un factor clave para la experiencia del usuario (UX) y, en consecuencia, para el SEO. ¡A Google le encantan los sitios rápidos!

La cabecera Location se utiliza para las redirecciones. Indica al navegador que una página ha sido trasladada a una nueva URL. Las redirecciones son indispensables cuando modificas la estructura de tu sitio, cambias de URL o pasas a HTTPS.

Sin embargo, una redirección mal configurada puede provocar una pérdida de “link juice” (el capital de enlaces que tu página ha adquirido) y perjudicar tu referenciamiento. Por lo tanto, es esencial elegir el tipo correcto de redirección (301 para las redirecciones permanentes, 302 para las redirecciones temporales) y asegurarse de que estén correctamente implementadas.

La cabecera HTTP x-robots-tag: controlar la indexación de tu sitio web con precisión

La cabecera HTTP X-Robots-Tag es una herramienta poderosa para controlar la indexación de tu sitio web por los motores de búsqueda. Permite indicar a los robots si una página debe ser indexada (index) o no (noindex), seguida (follow) o no (nofollow). Es una alternativa a la etiqueta meta robots en el código HTML, y puede ser particularmente útil para gestionar la indexación de archivos (PDF, imágenes…) o para aplicar directivas al conjunto de un sitio web. Usar la cabecera HTTP X-Robots-Tag te da un control preciso sobre lo que los motores de búsqueda ven e indexan de tu sitio, lo que es esencial para una estrategia SEO eficaz. Es un poco como tener las llaves de la puerta de entrada de tu sitio para los robots de los motores de búsqueda.

X-Robots-Tag: Controla la indexación web.

La cabecera HTTP strict-transport-security (HSTS): asegurar tu sitio web y mejorar la confianza de los usuarios

La cabecera Strict-Transport-Security (HSTS) es un elemento clave para la seguridad de tu sitio web. Indica al navegador que siempre debe usar una conexión HTTPS para acceder a tu sitio, incluso si el internauta escribe la dirección en HTTP. Esto permite proteger los datos de los usuarios contra los ataques de tipo “man-in-the-middle” y mejorar la confianza de los usuarios. Además, Google favorece los sitios seguros en HTTPS, por lo que activar HSTS puede tener un impacto positivo en tu SEO. Es un poco como instalar una caja fuerte digital para proteger las informaciones de tus visitantes.

Los códigos de respuesta que encontrarás la mayoría de las veces

Aquí hay algunos detalles sobre los códigos de respuesta que encontrarás la mayoría de las veces. Hay que saber que existen alrededor de 70 respuestas diferentes (incluidas cosas totalmente alucinantes, como “418: Soy una tetera”. Sí sí, lo juro, existe).

Códigos HTTP comunes.

Sin embargo, algunos son mucho más importantes para el SEO, y hay que conocerlos, así como su implicación.

200 OK

El código de estado 200 OK es el grial de las solicitudes HTTP. Significa que la solicitud tuvo éxito y que el servidor devolvió el recurso solicitado con éxito.

  • Significado: La página, la imagen, el archivo o cualquier otro recurso fue encontrado y enviado al navegador sin problema.
  • Impacto SEO: Un código 200 es esencial para un buen referenciamiento. Indica a los motores de búsqueda que la página es accesible y puede ser indexada.
  • Acciones a tomar: No se necesita ninguna acción si obtienes un código 200. Es el resultado deseado.

301 Moved Permanently

Todos los códigos que comienzan por “3” indican una redirección. El código de estado 301 se usa para las redirecciones permanentes. Indica que una página ha sido trasladada de forma permanente a una nueva URL.

  • Significado: La antigua URL ya no es válida y ha sido reemplazada por la nueva URL especificada en la cabecera Location.
  • Impacto SEO: Las redirecciones 301 son importantes para preservar el “link juice” y la clasificación de la antigua página. Indican a los motores de búsqueda que transfieran la autoridad de la antigua URL a la nueva.
  • Acciones a tomar: Usa las redirecciones 301 cuando modifiques la URL de una página de forma permanente. Asegúrate de que la redirección esté correctamente configurada y que apunte a una página pertinente.

Ten cuidado de no tener demasiadas. Si se trata de enlaces internos, la buena práctica sigue siendo tener 200 en todas partes, así que no pongas una redirección en marcha únicamente porque te da pereza encontrar los enlaces rotos…

302 Found (o Moved Temporarily)

El código de estado 302 se usa para las redirecciones temporales. Indica que una página ha sido trasladada temporalmente a una nueva URL.

  • Significado: La antigua URL está temporalmente no disponible, pero volverá a estar accesible en el futuro.
  • Impacto SEO: Las redirecciones 302 no transfieren el “link juice” de la antigua página a la nueva. Indican a los motores de búsqueda que la antigua URL sigue siendo la versión canónica y que debe ser indexada.
  • Acciones a tomar: Usa las redirecciones 302 únicamente cuando el traslado de la página es temporal. Si el traslado es permanente, usa en su lugar una redirección 301.

304 Not Modified

El código de estado 304 indica al navegador que el recurso solicitado no ha sido modificado desde la última solicitud.

  • Significado: El navegador ya tiene una copia del recurso en caché, y todavía es válida. El servidor no necesita devolver el recurso, lo que permite ahorrar ancho de banda y mejorar el tiempo de carga.
  • Impacto SEO: El código 304 es beneficioso para el SEO porque acelera el tiempo de carga de las páginas, que es un factor de clasificación importante.
  • Acciones a tomar: Asegúrate de que tu servidor esté correctamente configurado para gestionar las solicitudes condicionales (con las cabeceras If-Modified-Since o If-None-Match) y devolver un código 304 si el recurso no ha sido modificado.

Caché navegador OK (código 304).

401 Unauthorized

Los códigos de respuesta que comienzan por “4” indican un problema del lado del cliente. Es el inicio de los problemas, y a Google le horrorizan. No los quieres. Nunca (salvo casos muy particulares).

El código de estado 401 indica que el acceso al recurso solicitado requiere autenticación.

  • Significado: El usuario debe identificarse (proporcionando un nombre de usuario y una contraseña) para acceder a la página.
  • Impacto SEO: Las páginas protegidas por autenticación generalmente no son indexadas por los motores de búsqueda.
  • Acciones a tomar: Si deseas que la página sea indexada, debes eliminar la autenticación o autorizar a los robots de los motores de búsqueda a acceder a la página. Si la página no debe ser indexada, puedes usar la cabecera X-Robots-Tag: noindex o el archivo robots.txt.

Para Google, eso significa: no hay acceso posible. Así que es un desperdicio de crawl. Y hay que evitarlo.

403 Forbidden

El código de estado 403 indica que el acceso al recurso solicitado está prohibido, incluso después de la autenticación.

  • Significado: El usuario no tiene los permisos necesarios para acceder a la página, incluso si está autenticado.
  • Impacto SEO: Las páginas con un código 403 no son indexadas por los motores de búsqueda.
  • Acciones a tomar: Verifica los permisos de acceso a la página y asegúrate de que los usuarios autorizados puedan acceder. Si la página no debe ser accesible, puedes usar la cabecera X-Robots-Tag: noindex o el archivo robots.txt.

Ídem, no los quieres.

404 Not Found

Este lo conocen todos. El código de estado 404 indica que el recurso solicitado no ha sido encontrado en el servidor.

  • Significado: La página no existe o la URL es incorrecta.
  • Impacto SEO: Los errores 404 son nefastos para el SEO. Indican a los motores de búsqueda que el sitio web contiene enlaces rotos y páginas faltantes, lo que puede impactar negativamente la clasificación.
  • Acciones a tomar: Corrige los enlaces rotos y establece redirecciones 301 hacia páginas pertinentes si la página ha sido trasladada. Personaliza la página 404 para ofrecer una mejor experiencia de usuario e incitar a los visitantes a explorar otras partes del sitio web.

Tampoco los quieres, es catastrófico para el SEO.

410 Gone

El código de estado 410 indica que el recurso solicitado ya no existe y ha sido voluntariamente eliminado.

  • Significado: La página ya no existe y no estará más disponible en el futuro.
  • Impacto SEO: El código 410 es preferible al código 404 porque indica a los motores de búsqueda que la página ha sido eliminada de forma permanente y que no deben intentar indexarla más.
  • Acciones a tomar: Usa el código 410 cuando elimines una página de forma permanente y no desees reemplazarla por otra página.

Lógicamente, una URL en 410 anima al motor de búsqueda a no pasar más por ella. Pero si un enlace apunta a la página, el robot todavía puede visitarla (y tomar un error de paso, lo que hay que evitar). Así que hay que usar con muchas precauciones.

Error 410: ¡prudencia!

500 Internal Server Error

Los códigos del apocalipsis (o casi). El código de estado 500 indica un error interno del servidor. Imagina que vas a una tienda y te llevas un estante de neón en la cabeza al entrar.

Para Google, es lo mismo: eso quiere decir que el servidor está destrozado, a causa de un error de programación. Es la muerte, es el fin de todo, es una señal CATASTRÓFICA. Y hay que evitarlo.

  • Significado: El servidor ha encontrado un problema inesperado y no ha podido procesar la solicitud.
  • Impacto SEO: Los errores 500 son muy malos para el SEO porque impiden que los motores de búsqueda indexen el sitio web.
  • Acciones a tomar: Contacta a tu proveedor de hosting para resolver el problema rápidamente.

503 Service Unavailable

El código de estado 503 indica que el servidor está temporalmente no disponible.

  • Significado: El servidor está en mantenimiento o sobrecargado.
  • Impacto SEO: Los errores 503 pueden tener un impacto negativo en el SEO si persisten demasiado tiempo.
  • Acciones a tomar: Verifica el estado del servidor y asegúrate de que esté de nuevo disponible lo más rápidamente posible. Usa la cabecera Retry-After para indicar a los motores de búsqueda cuándo pueden volver a intentar acceder al sitio web.

Es una cabecera de mantenimiento: está destrozado, pero nos estamos ocupando. No es genial, pero mejor que 500 a secas…

Cómo verificar y analizar las cabeceras HTTP de tu sitio web

Ahora que entiendes la importancia de las cabeceras HTTP para el SEO, la pregunta que se plantea es: ¿cómo verificar las cabeceras HTTP de tu propio sitio web? No te preocupes, existen herramientas simples y eficaces para eso.

Herramientas gratuitas y de pago para inspeccionar las cabeceras HTTP

Existe una multitud de herramientas para inspeccionar las cabeceras HTTP, adaptadas a todos los presupuestos y a todos los niveles de competencia. En general, se usa un crawler (también llamado “spider bot”, “web crawler”, etc.). Las herramientas gratuitas son perfectas para un primer diagnóstico y una verificación rápida, mientras que las herramientas de pago ofrecen funcionalidades más avanzadas para un análisis en profundidad.

  • Herramientas gratuitas: el estetoscopio del SEO

    • Las extensiones de navegador: Extensiones como “HTTP Headers” para Chrome o Firefox te permiten visualizar las cabeceras HTTP de una página web en un clic. Es simple, rápido y eficaz para un primer vistazo. Piensa en el inspector web integrado de tu navegador, accesible haciendo clic derecho en una página y seleccionando “Inspeccionar” o “Examinar elemento”. La pestaña “Red” te mostrará las cabeceras HTTP de cada solicitud.
    • Las herramientas en línea: Sitios web como Websniffer.com te permiten introducir una URL y obtener las cabeceras HTTP en pocos segundos. Es ideal para probar rápidamente una página web sin instalar software.
  • Herramientas de pago: la resonancia magnética del SEO

    • Los crawlers SEO: Herramientas como Screaming Frog o OnCrawl te permiten rastrear todo tu sitio web y analizar las cabeceras HTTP de cada página. Es particularmente útil para identificar problemas a gran escala y para seguir la evolución de tus cabeceras HTTP con el tiempo.
    • Las plataformas de auditoría SEO: Plataformas como Semrush o Ahrefs integran herramientas de análisis de las cabeceras HTTP en sus auditorías SEO. Esto te permite tener una visión global de la salud de tu sitio web e identificar los problemas que pueden impactar tu referenciamiento.

Cualquiera que sea la herramienta que uses, lo importante es verificar regularmente las cabeceras HTTP de tu sitio web y corregir los posibles errores con la ayuda de un crawler. Es un trabajo de mantenimiento esencial para impulsar tu SEO.

ALT TAG

Interpretar los resultados: identificar los problemas e implementar correctivos

Una vez que hayas recopilado las cabeceras HTTP de tu sitio web, es hora de interpretarlas e identificar los posibles problemas. Es un poco como descifrar un código secreto para revelar las debilidades de tu sitio y transformarlas en oportunidades SEO.

  • Los códigos de estado: atención a las señales de alerta

    • Los errores 404: Un error 404 indica que una página no existe. Es una señal negativa para los motores de búsqueda, que puede impactar tu referenciamiento. Asegúrate de corregir estos errores estableciendo redirecciones 301 hacia páginas existentes.
    • Los errores 500: Un error 500 indica un problema del servidor. Es un problema grave que puede impedir que los motores de búsqueda indexen tu sitio web. Contacta a tu proveedor de hosting para resolver este problema rápidamente.
    • Las redirecciones 302: Una redirección 302 es una redirección temporal. No transmite el “link juice” de la página de origen a la página de destino. Usa en su lugar redirecciones 301 para las redirecciones permanentes.
  • La directiva x-robots-tag: controlar la indexación con precisión

    • noindex inesperado: Verifica que no hayas puesto accidentalmente una directiva noindex en páginas que deseas indexar.
    • nofollow no justificado: Asegúrate de no usar la directiva nofollow en enlaces internos importantes.
  • La seguridad: un sitio web seguro es un sitio web mejor referenciado

    • La ausencia de HSTS: Activa HSTS para forzar el uso de HTTPS en tu sitio web y mejorar la seguridad de los datos de tus usuarios.

En resumen, la interpretación de los resultados del análisis de las cabeceras HTTP te permite identificar los problemas que pueden impactar tu SEO e implementar correctivos para mejorar el rendimiento de tu sitio web.

Es un trabajo de mantenimiento sencillo y bruto que requiere rigor y método, pero que puede reportar mucho en términos de visibilidad y tráfico. Y seamos muy claros: lanzar un crawl lleva 20 segundos.

Me ha pasado muchas veces en auditorías ver sitios en los abismos de Google únicamente porque el webmaster del sitio en cuestión no había hecho un crawl desde el paso a producción (es imperdonable).

Configuración de las cabeceras HTTP

Ahora que sabes cómo inspeccionar las cabeceras HTTP de una página web e identificar los problemas, es hora de pasar a la acción y configurarlas correctamente. Es un poco como ajustar la configuración de un coche de carreras para mejorar su rendimiento.

Pero seamos claros: un gran poder implica grandes responsabilidades. No toques esto si no estás seguro de lo que haces.

Responsabilidad. ¡No toques!

Varios métodos se te ofrecen, desde la modificación del archivo .htaccess hasta la configuración del servidor, pasando por el uso del código. ¿El objetivo? Tener un control total sobre las informaciones que tu servidor envía a los navegadores y a los motores de búsqueda.

Modificar las cabeceras HTTP vía el archivo .htaccess (servidor Apache)

El archivo .htaccess es un poco como la caja de herramientas de tu servidor Apache. Te permite modificar la configuración de tu servidor sin tener que acceder a los archivos de configuración principales. Es particularmente útil para definir cabeceras HTTP específicas para un sitio web alojado en un servidor compartido.

  • ¿Cómo funciona?

    El archivo .htaccess es un archivo de texto que puedes crear o modificar en la raíz de tu sitio web. Contiene directivas que el servidor Apache interpreta en cada solicitud HTTP. Para modificar las cabeceras HTTP, puedes usar la directiva Header.

    Por ejemplo, para definir una cabecera Cache-Control durante un mes, puedes añadir la siguiente línea a tu archivo .htaccess:

    Header set Cache-Control "max-age=2592000"

    Esta línea indica al navegador que almacene en caché los recursos de tu sitio web durante 2592000 segundos (es decir, 30 días). Es una excelente manera de mejorar el tiempo de carga de tu sitio e impulsar tu SEO.

  • Ventajas e inconvenientes

    La ventaja principal de este método es su simplicidad y flexibilidad. Puedes modificar las cabeceras HTTP sin tener que reiniciar tu servidor. Sin embargo, el uso excesivo del archivo .htaccess puede ralentizar tu sitio web, porque el servidor debe leer e interpretar este archivo en cada solicitud. Por lo tanto, es una solución que hay que usar con moderación.

Configurar las cabeceras HTTP vía la configuración del servidor (Apache, Nginx)

Si tienes acceso a la configuración de tu servidor (Apache o Nginx), puedes modificar las cabeceras HTTP de manera más global y más eficiente. Es un poco como confiar la configuración de tu coche de carreras a un ingeniero especializado.

  • ¿Cómo funciona?

    La configuración del servidor te permite definir cabeceras HTTP para todo tu sitio web, incluso para varios sitios web alojados en el mismo servidor. La sintaxis y los archivos de configuración varían según el tipo de servidor (Apache o Nginx).

    • Apache: Puedes modificar el archivo httpd.conf o los archivos de configuración de los virtual hosts. La directiva Header también se usa en este caso.
    • Nginx: Puedes modificar el archivo nginx.conf o los archivos de configuración de los servidores virtuales. La directiva add_header se usa para añadir cabeceras HTTP.
  • Ventajas e inconvenientes

    Este método es más eficiente que el uso del archivo .htaccess, porque las cabeceras HTTP se definen una sola vez al inicio del servidor. Sin embargo, requiere competencias técnicas más avanzadas y un acceso a la configuración del servidor. Además, toda modificación de la configuración del servidor necesita un reinicio, lo que puede provocar una breve interrupción del servicio.

Ahí, claramente, nos metemos en el terreno de un administrador de sistemas. Una vez más, no toques nada si no estás seguro de lo que haces.

Config servidor: rendimiento y complejidad.

Usar el código para definir las cabeceras HTTP (PHP, Python, etc.)

Finalmente, puedes usar el código de tu sitio web (PHP, Python, etc.) para definir las cabeceras HTTP de manera dinámica. Es un poco como pilotar tu coche de carreras en tiempo real, ajustando la configuración según las condiciones de la pista.

  • ¿Cómo funciona?

    La mayoría de los lenguajes de programación web te permiten definir cabeceras HTTP a través de funciones específicas.

    • PHP: Puedes usar la función header() para definir las cabeceras HTTP. Por ejemplo, para definir el content-type de una página web, puedes usar la siguiente línea:
    <?php
    header('Content-Type: text/html; charset=utf-8');
    ?>
    • Python (Flask): Puedes usar la función make_response() para crear una respuesta HTTP y definir las cabeceras HTTP.
  • Ventajas e inconvenientes

    Este método ofrece una gran flexibilidad, porque puedes definir las cabeceras HTTP de manera dinámica según la lógica de tu aplicación. Sin embargo, requiere competencias en programación y puede hacer tu código más complejo. Además, es importante definir las cabeceras HTTP antes de enviar el contenido de la página web, de lo contrario no serán tenidas en cuenta.

Elige el método que mejor se adapte a tus competencias y a tu infraestructura. No hay vergüenza en no saber, y NUNCA SE JUEGA CON UN SERVIDOR EN PRODUCCIÓN

Si no estás seguro de ti, no toques nada.

Errores comunes a evitar durante la configuración de las cabeceras HTTP

Hemos visto cómo las cabeceras HTTP pueden convertirse en tus mejores aliadas para el SEO. Pero cuidado, mal configuradas, ¡también pueden jugarte malas pasadas! Imagina que preparas un festín para tus invitados (los motores de búsqueda), pero olvidas la sal o quemas el plato principal. El efecto es desastroso. De la misma manera, errores en la configuración de las cabeceras HTTP pueden sabotear tus esfuerzos de referenciamiento y perjudicar la experiencia del usuario.

Redirecciones incorrectas: cadenas de redirecciones, bucles de redirecciones

Las redirecciones son como un GPS que guía al internauta (y a los robots de los motores de búsqueda) hacia la página correcta. Pero si el GPS falla y te envía en círculos, ¡es la catástrofe!

Cadenas de redirecciones

Una cadena de redirecciones es cuando una URL redirige a otra URL, que a su vez redirige a una tercera, y así sucesivamente. Cada redirección adicional ralentiza la carga de la página, lo que es malo para la experiencia del usuario y el SEO. A Google no le gusta mucho seguir una larga serie de “si buscas eso, ve allí, luego allí, luego allí…” ¡Simplifica el recorrido! Usa redirecciones 301 directas hacia la página final.

Redirecciones: ¡Simplifica el recorrido!

Bucles de redirecciones

¡El bucle de redirección es la pesadilla absoluta! Es como si tu GPS te pidiera sin cesar dar media vuelta, sin llevarte nunca a destino. El navegador termina por abandonar y muestra un error. Asegúrate de que no haya un bucle infernal donde la página A redirige a la página B, que redirige a la página A. Es un error a corregir urgentemente porque impide el acceso a la página.

Mala configuración del almacenamiento en caché: recursos no almacenados en caché, almacenamiento en caché demasiado largo

El almacenamiento en caché es como tener una despensa bien llena para evitar tener que ir de compras cada vez. Tu navegador almacena copias de los archivos (imágenes, CSS, JavaScript) para no tener que volver a descargarlos en cada visita. Una buena configuración del almacenamiento en caché acelera considerablemente el tiempo de carga de las páginas e impulsa el SEO.

Recursos no almacenados en caché

Si las cabeceras Cache-Control y Expires están mal configuradas, el navegador vuelve a descargar los recursos cada vez, incluso si no han cambiado. Es como ir al supermercado todos los días para comprar pan cuando podrías almacenarlo para la semana. Piensa en definir valores de caché apropiados para los archivos estáticos.

Claramente, no es catastrófico, el sitio no está en peligro, pero los tiempos de carga tampoco serán óptimos a causa de esto.

Almacenamiento en caché demasiado largo

A la inversa, si almacenas en caché recursos durante demasiado tiempo, los visitantes corren el riesgo de no ver las últimas versiones de tu sitio web. Imagina que almacenas pan durante meses: ¡será incomible! Hay que encontrar el justo medio según la frecuencia con la que actualizas tu contenido. Puedes usar la cabecera ETag para permitir a los navegadores verificar si un recurso ha sido modificado antes de volver a descargarlo.

Olvidar la cabecera content-type o usar un tipo incorrecto

La cabecera Content-Type es como la etiqueta en un producto: indica al navegador qué tipo de archivo debe interpretar. Olvidar esta cabecera o usar un tipo incorrecto es como intentar abrir una botella de vino con un abridor de latas de cerveza. El navegador corre el riesgo de no mostrar correctamente la página web o de ejecutar el código. Asegúrate de definir bien el Content-Type según el tipo de archivo: text/html para las páginas HTML, image/jpeg para las imágenes JPEG, text/css para las hojas de estilo CSS, etc.

Uso inapropiado de la cabecera x-robots-tag: bloquear la indexación de páginas importantes

La cabecera X-Robots-Tag, como hemos visto, es un poco como una señal de tráfico para los robots de los motores de búsqueda. Les indica si deben indexar o no una página. Pero si te equivocas de señal, corres el riesgo de bloquear la indexación de páginas importantes para tu SEO.

Señal de tráfico SEO.

Bloquear la indexación de páginas importantes es como cerrar las puertas de tu tienda a los clientes.

Asegúrate de no añadir accidentalmente la directiva noindex a páginas que deseas ver aparecer en los resultados de búsqueda. Verifica regularmente las cabeceras HTTP de tu sitio web con la ayuda de herramientas como Screaming Frog o OnCrawl para detectar posibles errores.

Descuidar la seguridad: no implementar HTTPS y HSTS

Hoy en día, la seguridad es primordial, tanto para los internautas como para los motores de búsqueda. No implementar HTTPS es como dejar la puerta de tu casa abierta a los ladrones.

No implementar HTTPS es un poco como enviar tus datos en una postal: todo el mundo puede leerlos. El HTTPS cifra los datos intercambiados entre el navegador y el servidor, protegiendo así las informaciones sensibles de los usuarios. Además, Google ha anunciado que el HTTPS es un factor de clasificación.

HSTS (HTTP Strict Transport Security) por su lado, es como instalar una alarma y rejas en las ventanas. Esta cabecera HTTP indica a los navegadores que siempre usen la versión HTTPS del sitio web, incluso si el usuario escribe la URL en HTTP. Esto protege contra los ataques de tipo “man-in-the-middle” y mejora el rendimiento del sitio.

Las cabeceras HTTP, una palanca poderosa

Espero que ahora tengas una visión clara de estos elementos a menudo invisibles, pero tan importantes.

Permiten controlar la indexación con la cabecera X-Robots-Tag, optimizar el almacenamiento en caché para mejorar la velocidad de carga, gestionar las redirecciones para una experiencia de usuario fluida, y garantizar la seguridad de tu sitio con HTTPS y HSTS.

Normalmente, si tienes un buen proveedor de hosting, todo esto está configurado de oficio para ti. Pero si estás en un servidor dedicado, tienes mucho trabajo por delante, porque habrá que optimizar todo esto.

Y aunque pienses que todo está OK, no cuesta nada hacer una pequeña verificación de vez en cuando, para asegurarte de que el crawl de los motores de búsqueda será óptimo: ¡tu referenciamiento natural te lo agradecerá!

Charles Annoni

Charles Annoni

Desarrollador Front-End y Formador

Charles Annoni acompaña a las empresas en su desarrollo web desde 2008. También es formador en educación superior.