En bref. Transmettre les paramètres de campagne de la chaîne de requête à chaque cible de redirection, puis vérifier l’URL finale et la valeur page_location envoyée à Google Analytics.
Définition : Conserver les paramètres de campagne consiste à transmettre les libellés de campagne présents dans la chaîne de requête (query string) d’une URL à travers chaque redirection, jusqu’à la page où l’outil d’analyse les collecte. Les paramètres UTM sont les libellés de campagne de Google, comme
utm_source,utm_mediumetutm_campaign; la chaîne de requête commence après?.
Points clés
- La RFC 9110, section 10.2.2 définit
Locationcomme l’en-tête de réponse qui indique la cible d’une redirection. - La RFC 3986, section 5.2.2 résout une cible contenant un nouveau chemin en utilisant la composante de requête de cette cible, qui peut être absente.
- Au 17 octobre 2026, la documentation de Google sur les URL de campagne décrit les libellés de campagne et les dimensions Source/Support de la session (
Session source/medium) et Campagne de la session (Session campaign) du rapport Acquisition de trafic (Traffic acquisition). - La référence de configuration de Google définit
page_locationcomme l’URL complète de la page, dont la valeur par défaut estdocument.locationdans le navigateur.
Pourquoi une redirection peut-elle supprimer la chaîne de requête ?
Une réponse de redirection fournit une URL cible dans Location. Selon la RFC 9110, une cible relative est résolue à partir de l’URL demandée. Une cible relative peut commencer par /, ce qui indique un chemin sur le même hôte.
Pour une requête d’exemple vers /old?utm_source=newsletter1, une réponse contenant Location: /landing aboutit à /landing sans chaîne de requête. Ce résultat découle de l’algorithme de résolution du chemin et de la requête décrit dans la RFC 3986. Une référence vide peut hériter de la requête d’origine, mais un nouveau chemin nécessite l’ajout explicite de ses paramètres de campagne. Chaque redirection suivante nécessite la même vérification.
Quelle règle de redirection conserve les paramètres ?
En octobre 2026, la directive return de nginx accepte des variables dans une URL de redirection. L’exemple de configuration suivant se place dans un bloc server et redirige /old vers /landing :
location = /old {
return 302 /landing$is_args$args;
}
La référence des variables intégrées de nginx définit $args comme les arguments de la requête et $is_args comme ? en présence d’arguments, ou une chaîne vide dans le cas contraire. Ensemble, ces variables ajoutent la chaîne de requête sans ajouter de point d’interrogation aux requêtes dépourvues d’arguments. Cet exemple suppose que /landing ne contient pas déjà de chaîne de requête et qu’aucune règle précédente ne modifie $args.
La règle transmet l’intégralité de la chaîne de requête. Son code de redirection temporaire, 302, est défini dans la RFC 9110. La conservation des paramètres de campagne repose sur la construction de l’URL cible.
Comment tester la redirection ?
Le manuel de curl documente -L pour suivre les redirections, -D pour afficher les en-têtes de réponse et url_effective pour obtenir l’URL finale récupérée. Une fois la règle d’exemple installée et une page accessible sur /landing, cette commande vérifie la chaîne de redirections. L’hôte fictif représente le site configuré.
curl -sS -L -D - -o /dev/null \
-w '\nFinal URL: %{url_effective}\n' \
'https://example.com/old?utm_source=newsletter1&utm_medium=email&utm_campaign=summer-sale'
L’URL finale attendue est :
https://example.com/landing?utm_source=newsletter1&utm_medium=email&utm_campaign=summer-sale
Chaque en-tête Location intermédiaire doit conserver les valeurs de campagne. Un deuxième test, sans chaîne de requête, vérifie que la destination reste /landing. Une valeur encodée comme email%26promo permet de vérifier qu’une valeur contenant une esperluette reste intacte ; les règles d’encodage de la RFC 3986 distinguent les données encodées des délimiteurs.
Comment vérifier la collecte des données d’analyse ?
La documentation de Google sur la collecte des campagnes associe les paramètres UTM intégrés au champ d’emplacement du document, page_location. Le test dans le navigateur porte donc sur l’URL transmise dans l’événement de mesure de la page de destination, y compris sa chaîne de requête.
La référence de configuration permet aussi de remplacer la valeur de page_location. Comparer cette valeur configurée à l’URL finale aide à repérer une chaîne de requête supprimée pendant la collecte. Après la collecte et le traitement, le guide de Google sur les URL de campagne situe les dimensions de campagne de session dans Acquisition > Acquisition de trafic (Acquisition > Traffic acquisition).
Termes associés
Questions fréquentes
Puis-je convertir les valeurs de campagne en minuscules lors d’une redirection ?
Le guide de Google sur les URL de campagne précise que les valeurs des paramètres sont sensibles à la casse. Conservez la casse d’origine pour préserver le même libellé de campagne.
Pourquoi mon test conserve-t-il la source d’une session antérieure ?
La documentation de Google sur les sources de trafic indique qu’une nouvelle campagne rencontrée au cours d’une session existante ne déclenche pas une autre session. Testez la collecte séparément de l’attribution de session ; une session existante conserve la campagne ou la source de trafic qui lui est associée.
Sources
- IETF, « RFC 9110: HTTP Semantics », juin 2022
- IETF, « RFC 3986: Uniform Resource Identifier (URI): Generic Syntax », janvier 2005
- Google, « URL builders: Collect campaign data with custom URLs », sans date
- Google, « Configuration », 5 octobre 2026
- nginx, « Module ngx_http_rewrite_module », sans date
- nginx, « Module ngx_http_core_module », sans date
- curl, « curl man page », sans date
- Google, « Campaigns and traffic sources », sans date
Vérifiez comment une page se lit pour les moteurs de réponse. Ouvrir l’analyseur de score GEO