Este artículo está dirigido a los desarrolladores que desean alojar el etiquetado del servidor en el mismo contexto propio que su sitio web. La publicación del mismo origen es una práctica recomendada que te permite aprovechar los beneficios de seguridad y durabilidad de las cookies establecidas por el servidor. Las siguientes instrucciones se aplican para configurar la publicación del mismo origen, independientemente de la etiqueta de Google implementada en tu sitio (gtag.js o gtm.js).
Cuando configuras un servidor de etiquetas por primera vez, se aloja en un dominio que proporciona el proveedor de servicios en la nube. Cuando usas el extremo predeterminado, se entregan datos al contenedor del servidor, pero se ejecuta en un contexto de terceros. Para aprovechar los beneficios de un contexto propio, como cookies más duraderas, tu servidor de etiquetas y tu sitio web deben ejecutarse en el mismo dominio.
En la siguiente tabla, se muestra cómo puedes alojar un servidor de etiquetado cuando el sitio web superior se aloja en www.example.com
:
Mismo origen (práctica recomendada) | Subdominio | Dominio predeterminado | |
---|---|---|---|
URL de ejemplo | https:/ |
https:/ |
https:/ |
Acceso a cookies establecidas por el servidor | Acceso completo a los beneficios de seguridad y durabilidad | Acceso completo a los beneficios de seguridad y durabilidad | Ninguno. Solo se pueden configurar cookies de JavaScript. |
Complejidad de configuración | Configura una CDN o un balanceador de cargas para reenviar solicitudes. Es posible que debas actualizar las entradas de DNS. | Actualiza las entradas de DNS. | Viene preconfigurado. |
Elige tu opción de implementación para comenzar.
Requisitos previos
En esta guía, suponemos que ya tienes lo siguiente:
- Configura un contenedor de servidor en Tag Manager
- Configura un servidor de etiquetado
- Una CDN o un balanceador de cargas que pueda reenviar solicitudes.
- Si usas App Engine, el servidor de etiquetado debe ejecutar la versión 2.2.0 o una posterior. Para preparar tu servidor de etiquetado para el futuro, migra a Cloud Run.
Configura el dominio personalizado
Puedes configurar el contenedor de servidor para que se ejecute en una ruta del mismo dominio que
tu sitio web. Por ejemplo, si tu sitio web entrega tráfico web en www.example.com
, reserva una ruta como www.example.com/metrics
para tu contenedor de servidor.
1. Elige una ruta de tu dominio para usarla en tu servidor de etiquetas
Esta ruta de acceso se reservará para esta implementación de publicación propia. Asegúrate de elegir una ruta que aún no estés usando.
Estos son algunos ejemplos de rutas que podrías usar: /collect
, /metrics
y /data
.
Toma nota de esta cadena de ruta. Lo usarás en los pasos posteriores en lugar de /metrics
donde veas lo siguiente: /metrics
2. Enruta el tráfico a tu servidor de etiquetas
Si tu sitio web ya está configurado con una CDN o un balanceador de cargas que admite el enrutamiento de tráfico por rutas, avanza al paso 4.
- Agrega un origen o un backend que apunte a tu sitio web.
- Anula el encabezado Host para que sea el nombre de host del sitio web, como
example.com
. - Permite que se reenvíen todas las cookies y cadenas de consulta. Si la plataforma no tiene esta opción, es probable que lo haga de forma predeterminada.
- Agrega otro origen o backend que dirija a tu servidor de etiquetado. Puede ser el dominio que proporciona el proveedor de servicios en la nube, como
metrics.run.app
. - Anula el encabezado Host para que sea igual al dominio especificado anteriormente. Permite que se reenvíen todas las cookies y cadenas de consulta.
- Agrega una regla de ruta de acceso, como
/metrics/*
, para enrutar el tráfico al servidor de etiquetado. - Configura la ruta de etiquetado reservada del servidor para que tenga una prioridad más alta que la regla predeterminada.
- Actualiza tu DNS para que apunte a la CDN o al balanceador de cargas si aún no lo hiciste. Es posible que las actualizaciones de DNS tarden un poco en propagarse.
- Visita el extremo
/healthy
en el dominio que acabas de configurar, comohttps://example.com/metrics/healthy
. Deberías ver unok
.
3. Actualiza la URL del servidor en Google Tag Manager
Debes actualizar la configuración del contenedor de servidor para que pueda identificar el prefijo de ruta y procesar las solicitudes correctamente.
Para actualizar al nuevo extremo, haz lo siguiente:
- Abre Google Tag Manager
- Abre el contenedor de servidor que está configurado en el mismo origen que el sitio web.
- En la pestaña Administrador > Configuración del contenedor, quita todas las URLs anteriores. Esto es necesario porque todas las URLs del contenedor de servidor deben compartir la misma ruta.
- Haz clic en Agregar URL y, luego, ingresa la URL, incluido el prefijo de ruta de acceso.
- Guarda y vuelve a tu lugar de trabajo.
- Haz clic en el botón Preview para iniciar una nueva sesión de depuración y enviar una solicitud en una pestaña independiente.
- Haz clic en la solicitud que se envió. Asegúrate de que tu cliente haya reclamado la solicitud entrante.
Solucione los problemas habituales
- La vista previa no muestra las solicitudes entrantes
- Navega al explorador de registros de tu proyecto de nube. Verifica que la implementación de etiquetado del servidor esté recibiendo tráfico. De lo contrario, sigue las instrucciones del paso 1.
- Confirma que la CDN o el balanceador de cargas reenvíen las cookies.
- Verifica que tengas un solo servidor de vista previa y que los servidores de etiquetado tengan configurado
PREVIEW_SERVER_URL
. - Para confirmar que el servidor de vista previa esté en ejecución, ve a
PREVIEW_SERVER_URL
+/healthy
. Deberías ver unok
.
- Los clientes no reclaman solicitudes: Actualiza la URL en la Configuración del contenedor para usar la ruta reservada. Si la URL no contiene la ruta de acceso o si son diferentes, los clientes no funcionarán correctamente.