Configuración de dominios personalizados

Este artículo va dirigido a desarrolladores que quieran alojar etiquetado del lado del servidor en el mismo contexto propio que su sitio web. El servicio en el mismo origen es una práctica recomendada que te permite aprovechar las ventajas de seguridad y durabilidad de las cookies del servidor. Las instrucciones que se incluyen a continuación se aplican a la configuración del servicio en el mismo origen independientemente de la etiqueta de Google que tengas desplegada en tu sitio (gtag.js o gtm.js).

Al configurar un servidor de etiquetado por primera vez, se aloja en un dominio proporcionado por el proveedor de servicios en la nube. Si usas el endpoint predeterminado, este envía datos al contenedor de servidor, pero se ejecuta en un contexto externo. Para aprovechar las ventajas del contexto propio, como cookies más duraderas, tu servidor de etiquetado y tu sitio web deben ejecutarse en el mismo dominio.

En la siguiente tabla se muestra cómo alojar un servidor de etiquetado cuando el sitio web está alojado en www.example.com:

Mismo origen (práctica recomendada) Subdominio Dominio predeterminado
URL de ejemplo https://www.example.com/metrics https://metrics.example.com https://metrics.run.app
Acceso a cookies definidas por el servidor Acceso completo a ventajas de seguridad y durabilidad. Acceso completo a ventajas de seguridad y durabilidad. No. Solo se pueden definir cookies de JavaScript.
Dificultad de la configuración Debes configurar una CDN o un balanceador de carga para redirigir solicitudes. Podrías tener que actualizar las entradas de DNS. Debes actualizar las entradas de DNS. Viene preconfigurado.

Elige la implementación que quieras para empezar.

Requisitos

En esta guía se presupone que tienes:

  • Un contenedor de servidor configurado en Tag Manager.
  • Un servidor de etiquetado configurado.
  • Una CDN o un balanceador de carga para redirigir solicitudes.
  • Si usas App Engine, el servidor de etiquetado debe ejecutarse en la versión 2.2.0 o una posterior. Para que tu servidor de etiquetado siga funcionando, mígralo a Cloud Run.

Configurar el dominio personalizado

Puedes configurar tu contenedor de servidor para que se ejecute en una ruta del mismo dominio que tu sitio web. Por ejemplo, si tu sitio web sirve tráfico en www.example.com, reserva una ruta como www.example.com/metrics para tu contenedor de servidor.

Diagrama del etiquetado del lado del servidor configurado en el mismo origen.

1. Elige una ruta de tu dominio para el servidor de etiquetado

Esta ruta se reservará para esta implementación de servicio propio. Asegúrate de que sea una ruta que no esté en uso.

Ejemplos de rutas que puedes incluir: /collect, /metrics o /data

Anota la cadena de esta ruta, ya que la usarás en los siguientes pasos en lugar de /metrics cada vez que veas /metrics.

2. Dirige el tráfico al servidor de etiquetado

Si tu sitio web ya está configurado con una CDN o un balanceador de carga que permita dirigir el tráfico por rutas, ve directamente al paso 4.

  1. Añade un origen o backend que dirija a tu sitio web.
  2. Anula el encabezado Host y sustitúyelo por el nombre de host del sitio web, como example.com.
  3. Permite que se redirijan todas las cookies y cadenas de consulta. Si la plataforma no tiene esta opción, probablemente lo haga de forma predeterminada.
  4. Añade otro origen o backend que dirija al servidor de etiquetado. Puede ser el dominio proporcionado por el proveedor de servicios en la nube, como metrics.run.app.
  5. Anula el encabezado Host y sustitúyelo por el dominio especificado anteriormente. Permite que se redirijan todas las cookies y cadenas de consulta.
  6. Añade una regla de ruta, como /metrics/*, para dirigir el tráfico al servidor de etiquetado.
  7. Configura la ruta de etiquetado del lado del servidor reservada para que tenga más prioridad que la regla predeterminada.
  8. Actualiza tu DNS para que dirija a la CDN o al balanceador de carga si no lo has hecho ya. Los cambios en el DNS pueden tardar un tiempo en propagarse.
  9. Accede al endpoint /healthy del dominio que acabas de configurar, como https://example.com/metrics/healthy. Deberías ver lo siguiente: ok.

3. Actualiza la URL del servidor en Google Tag Manager

Debes actualizar la configuración de tu contenedor de servidor para que pueda identificar el prefijo de ruta y procesar las solicitudes correctamente.

Para actualizarlo al nuevo endpoint, sigue estos pasos:

  1. Abre Google Tag Manager.
  2. Abre el contenedor de servidor que está configurado en el mismo origen que el sitio web.
  3. En la pestaña Administrar > Configuración del contenedor, quita todas las URLs que tuvieras. Este paso es necesario porque todas las URLs del contenedor de servidor deben tener la misma ruta.
  4. Haz clic en Añadir URL e introduce la URL con el prefijo de ruta.
  5. Haz clic en Guardar y vuelve a tu espacio de trabajo.
  6. Haz clic en el botón Vista previa para iniciar una nueva sesión de depuración y enviar una solicitud en otra pestaña.
  7. Haz clic en la solicitud que se ha enviado. Asegúrate de que el cliente haya reclamado la solicitud entrante.

Solucionar problemas habituales

  1. La vista previa no muestra las solicitudes entrantes
    1. Accede a Explorador de registros en tu proyecto en la nube. Verifica que el despliegue del etiquetado del lado del servidor está recibiendo tráfico. Si no es así, sigue las instrucciones del paso 1.
    2. Confirma que la CDN o el balanceador de carga están redirigiendo cookies.
    3. Comprueba que tienes un único servidor de vista previa y que en los servidores de etiquetado se ha definido PREVIEW_SERVER_URL.
    4. Confirma que el servidor de vista previa se está ejecutando. Para ello, accede a PREVIEW_SERVER_URL + /healthy. Deberías ver lo siguiente: ok.
  2. Los clientes no reclaman las solicitudes Actualiza la URL en la configuración del contenedor para usar la ruta reservada. Si la URL no contiene la ruta o si son diferentes, los clientes no funcionarán correctamente.