Créer une règle

Quelques concepts : règles et jeu de règles

Une règle ("rule" en anglais) redirection.io est composée de deux éléments :

  • un Trigger (un "déclencheur"), qui définit les conditions d'exécution de la règle ;
  • une Action, qui définit les opérations que la règle doit effectuer.

Il est également possible d'associer des Exemples à une règle, ce qui aide à tester et à vérifier le résultat de la règle, de manière similaire aux tests unitaires.

La liste complète des Règles est appelée le Jeu de règles (le "ruleset"). Lorsque vous publiez un Jeu de règles, il est appliqué à votre site web, ce qui signifie que chaque requête effectuée vers votre site web est filtrée par rapport au Jeu de règles. En d'autres termes, pour chaque requête effectuée vers votre site, l'agent redirection.io installé dans votre infrastructure évalue les Règles qui doivent être exécutées pour cette requête.

Triggers

Les Triggers définissent la manière dont les agents redirection.io vont faire correspondre les requêtes entrantes avant d'effectuer une action. Les triggers sont basés sur le modèle d'URL de la requête, et peuvent inclure plusieurs autres conditions : méthode HTTP, en-têtes HTTP, etc. Consultez la page de référence des triggers et marqueurs pour plus d'informations.

Actions

Lorsqu'une règle est déclenchée par une requête, une ou plusieurs Actions peuvent être exécutées. Bien sûr, le but principal de redirection.io est d'exécuter des redirections, mais nous pouvons faire bien plus ! Voici la liste des actions cumulatives que redirection.io peut exécuter :

  • Redirection : exécuter une redirection HTTP ;
  • Page non disponible : retourner une erreur HTTP, pour les URL que vous souhaitez désactiver sciemment (404 ou 410) ;
  • Surcharge de balise méta HTML : pour définir des balises méta par défaut, ou surcharger des balises méta existantes ;
  • En-têtes de réponse HTTP personnalisés : pour ajouter, surcharger ou supprimer un ou plusieurs en-têtes HTTP ;
  • Données structurées : cette action permet d'injecter des données structurées schema.org dans le corps de la page ;
  • Code HTML personnalisé : cette action permet d'injecter du code HTML personnalisé dans la page.

Toutes ces actions sont précisément définies dans la page de référence des actions.

Comment créer une règle

Bien sûr, la création et la gestion de règles est le moyen d'aller pour bénéficier de redirection.io. La création de règles est plutôt simple et directe :

  1. redirection.io project dashboardRendez-vous sur le tableau de bord de votre projet

  2. Rules menucliquez sur le lien du menu "Règles"

  3. Button to add a new rulecliquez sur le lien "Ajouter une nouvelle règle", dans le coin supérieur droit de la page

  4. Rule creation formle formulaire de création de règles est divisé en quatre parties :

    • une section Trigger permet de configurer les conditions qui déclencheront l'exécution de la règle ;
    • les Exemples permettent d'associer des requêtes d'exemple à cette règle. Ces exemples seront utilisés à l'étape Impact, pour vérifier que la règle se comporte comme vous l'attendez. Si votre projet a déjà enregistré du trafic, des exemples peuvent être générés à partir de vos journaux de trafic réels ;
    • l'étape Action permet de définir les actions à exécuter lorsque la règle est déclenchée ;
    • l'étape Impact affiche le comportement de la règle, une fois publiée.

    Vous pouvez utiliser le bouton "Ajouter un marqueur" pour insérer des marqueurs dans l'"URL source". Les marqueurs sont des éléments réutilisables qui nous permettront de collecter des parties de l'URL entrante. Par exemple, si l'URL à faire correspondre est de la forme /shop/products/<ID> avec <ID> un entier, vous pouvez taper /shop/products/ puis cliquer sur le bouton "Ajouter un marqueur", et insérer un marqueur "entier" (nommez-le comme vous le souhaitez). Dans la section "Action", vous pouvez ensuite utiliser ce marqueur nouvellement créé pour le réinjecter dans la cible de redirection. En savoir plus sur les marqueurs

  5. Impact resultsUne fois les Triggers, les Exemples et les Actions configurés, consultez la section Impact. Elle explique comment la règle se comporte par rapport aux exemples configurés à la deuxième étape. Vous pouvez examiner les impacts pour chaque exemple de requête, afin de comprendre comment la réponse à cette requête a été gérée.

  6. Si tout semble correct, cliquez sur le bouton "Enregistrer cette règle". La règle sera enregistrée, mais ne sera pas immédiatement appliquée à votre production : vous devez d'abord "publier" les modifications.

Activer ou désactiver temporairement une règle

Dans certaines circonstances, vous pourriez avoir besoin de désactiver une règle temporairement. Vous pourriez la supprimer complètement, car il est toujours possible de la réactiver plus tard en utilisant les imports ou l'historique des versions des règles, mais nous offrons une commodité plus directe pour de tels cas.

À l'étape "Impact", vous pouvez choisir d'activer ou de désactiver une règle. Si une règle est désactivée, elle ne sera pas utilisée par vos instances (instances de "production" et de "test"). Elle existera toujours, et vous pourrez la réactiver si nécessaire, mais elle n'aura simplement aucun impact sur votre site web, comme si elle n'existait pas.

Enable or disable a rule in a quick way

Dans la liste des règles, vous pouvez filtrer la liste des règles en utilisant le filtre "Activé". Cela peut être utile pour retrouver un ensemble de règles désactivées que vous souhaitez réactiver.

Tester les règles

L'un des réels avantages de redirection.io, par rapport à la création de redirections avec d'autres solutions, est que nous pouvons tester un ensemble de règles avant de les publier en production.

Les outils d'assistance visuelle fournis dans le gestionnaire sont très utiles pour vous assurer que vous ne briserez pas une partie de votre site web ou d'autres redirections existantes lors de la création ou de la publication de nouvelles règles.

Vérifier le fonctionnement d'une règle

Lors de la création ou de l'édition d'une règle, la dernière étape avant d'enregistrer les modifications est appelée l'étape "Impact". Au cours de cette étape, redirection.io calcule l'effet de la règle en cours d'édition, ainsi que toutes les autres règles du jeu de règles, pour chacun des exemples qui ont été attachés à la règle actuelle.

Impact results

Pour chaque requête d'exemple, une ligne du tableau "Impact" montre comment redirection.io traitera cette requête :

  • Correspondance : dans la partie gauche du tableau, la colonne "Correspondance" décrit le statut de cette requête d'exemple. Rappelez-vous que, pour chaque requête d'exemple, vous pouvez définir si elle doit déclencher la règle en cours d'édition ou non ? C'est ici que ce paramètre s'avère utile :
    • dans les deux premières lignes, les exemples sont censés déclencher la règle actuelle ("Doit correspondre"), et le moteur d'impacts de redirection.io a vérifié que la règle sera déclenchée. C'est pourquoi ces deux lignes sont affichées en vert.
    • sur la troisième ligne, l'exemple ajouté manuellement /other-path a été évalué et ne déclenchera pas la règle actuelle, comme nous l'attendions - cet exemple passe le test d'impact.
  • Trigger : dans la colonne "Trigger", il y a un rappel des conditions de requête définies dans l'exemple associé à la règle
  • Actions : dans la colonne "Actions" sont affichées les actions qui devraient être exécutées par redirection pour cette requête d'exemple. Par exemple, pour la première ligne, une requête sur https://example.com/shop/about fera en sorte que redirection.io génère une redirection 301 vers /buy/about. Les actions affichées dans cette colonne sont le total cumulatif de toutes les actions produites par toutes les règles. En d'autres termes, même si la règle actuelle n'est pas déclenchée par la requête d'exemple (c'est le cas pour le 3ème exemple ci-dessus), vous pouvez voir des actions affichées dans la colonne "Actions" - ces actions sont simplement générées par d'autres règles du jeu de règles.

L'étape "Impact" de la création/édition de règles fournit plus d'outils d'inspection. Cliquez sur la ligne d'impact, et vous obtiendrez un panneau dédié avec trois onglets, qui expliquent :

  1. pourquoi la règle actuelle est déclenchée (ou non) par la requête d'exemple. Chaque partie du trigger de la règle est évaluée, afin que vous puissiez localiser quelle partie du trigger ne fonctionne pas comme vous l'attendiez ;
  2. redirection.io can show which rules will be triggered by a given requestquelles règles du jeu de règles sont déclenchées par cette requête d'exemple. Sur cet onglet, vous pouvez également réorganiser les règles (cela modifiera la priorité des règles actuelle).
  3. redirection.io can show which actions will be executed for a given requestle plan détaillé d'exécution des règles, qui montre l'ordre d'exécution des règles pour cette requête d'exemple et, pour chacune des règles exécutées, laquelle de ses actions sera exécutée par redirection.io (certaines actions pouvant être remplacées par des règles de priorité plus élevée).

Notez que, pendant cette étape "impact", seules les actions configurées dans les règles redirection.io seront affichées. Si votre site web ou d'autres composants du serveur effectuent une redirection ou toute autre action, elle ne sera pas affichée sur cet écran.

Statuts possibles pour les règles d'exemple

Dans le tableau de l'étape "impact", chaque requête d'exemple peut avoir l'un des statuts suivants :

Statut Description
The "Must match / matching" label Vous vous attendez à ce que cette requête d'exemple déclenche la règle actuelle, et le moteur de règles de redirection.io a confirmé que cette règle sera déclenchée pour une telle requête.
The "Must not match / not matching" label Vous vous attendez à ce que cette requête d'exemple ne déclenche pas la règle actuelle, et le moteur de règles de redirection.io a confirmé que cette règle ne sera pas déclenchée pour une telle requête.
The "Must match / not matching" label Vous vous attendez à ce que la requête d'exemple déclenche la règle actuelle, mais le moteur de règles de redirection.io ne peut pas confirmer que cette règle sera déclenchée pour une telle requête.
The "Must not match / matching" label Vous vous attendez à ce que cette requête d'exemple ne déclenche pas la règle actuelle, mais le moteur de règles de redirection.io a confirmé que cette règle sera déclenchée pour une telle requête.
The overriden status La règle devait être déclenchée, et le moteur de règles redirection.io a confirmé que ce serait le cas. Cependant, un avertissement a été émis pour cette règle, car certaines de ses actions sont remplacées par des actions définies dans des règles de priorité plus élevée. Ce n'est pas nécessairement un problème.
The warning status La règle devait être déclenchée, et le moteur de règles redirection.io a confirmé que ce serait le cas. Cependant, un avertissement a été émis pour cette règle. Vous pouvez survoler le symbole d'avertissement pour obtenir plus d'informations sur le problème. La plupart du temps, cela peut être dû au fait que cette règle fait partie d'une chaîne de redirections (au moins deux redirections successives) que vous pourriez simplifier en créant une nouvelle règle pour éviter de chaîner les réponses de redirection. Une autre raison de ce statut d'avertissement peut être que toutes les actions définies dans la règle en cours d'édition sont remplacées par des règles de priorité plus élevée.
The error status La règle devait être déclenchée, et le moteur de règles redirection.io a confirmé que ce serait le cas. Cependant, une erreur a été soulevée avec cette règle, et vous pouvez survoler le symbole d'erreur pour obtenir des explications. Par exemple, l'erreur peut être une boucle de redirection qui a été détectée. La plupart du temps, vous devriez modifier cette règle avant de l'enregistrer.

La détection des chaînes et boucles de redirection est effectuée par le moteur de règles de redirection.io en utilisant les règles configurées dans redirection.io. Si votre service backend génère d'autres redirections dont redirection.io n'est pas conscient, le moteur de règles ne peut pas inclure ces redirections dans l'outil de détection des boucles et chaînes de redirection.

Vérifier comment une URL sera traitée

Vous avez déployé un jeu de règles et, pour une raison ou une autre, vous ne comprenez pas pourquoi une URL donnée est redirigée sur votre site web (ou, au contraire, pourquoi cette URL n'est en fait pas redirigée).

Afin d'analyser ce qui se passe pour une requête donnée, redirection.io propose la page "Tester les règles". Cette partie du gestionnaire vous permet d'inspecter une requête spécifique et d'expliquer pourquoi elle déclenche (ou non) une règle.

  1. Testing a specific request is possible in redirection.iodans le menu de gauche, naviguez vers la page "Tester les règles"
  2. entrez l'URL de la page que vous souhaitez tester
  3. s'il y a des conditions de requête supplémentaires que vous souhaitez évaluer (la méthode HTTP, un en-tête de requête, une adresse IP source, etc.), ajoutez-les à la requête à tester
  4. cliquez sur le bouton "Tester cette requête" pour voir les résultats de l'inspection.

Une fois l'inspection terminée, si au moins une règle a été trouvée pour être exécutée pour la requête testée, vous obtiendrez des informations sur ce qui se passe :

Matched rules result screencapture

Le deuxième onglet fournit une inspection au niveau de l'action de la réponse qui serait générée par redirection.io pour une telle requête. Les actions remplacées sont affichées avec une opacité partielle, pour montrer qu'elles ont été remplacées ;

Detailed actions screencapture

Par exemple, dans la capture ci-dessus, nous pouvons voir que, pour une requête POST sur le chemin /buy/products/27, les actions résultantes qui seront effectuées par redirection.io proviennent de deux règles distinctes :

  • la première règle ajoute un en-tête de réponse Cache-Control ;
  • et la seconde règle remplace la première afin de définir la Location de redirection à /products-waiting-list/27.

Enfin et surtout, pourvu que l'URL testée soit une URL absolue, redirection.io offre la possibilité de déclencher une requête HTTP réelle pour vérifier si la réponse réelle correspond à la réponse attendue calculée par le moteur de règles.

  • cliquez sur "Effectuer une requête en direct" à droite de la page
  • puis, cliquez sur le bouton "Envoyer une requête HTTP"

Après quelques secondes, vous devriez voir une comparaison entre les propriétés attendues de la réponse et leurs valeurs réelles. Par exemple :

Detailed actions screencapture

Une fois la réponse réelle affichée, vous pouvez inspecter la réponse obtenue par redirection.io pour cette requête.

De nombreuses raisons peuvent expliquer pourquoi la réponse réelle diffère de la réponse théorique calculée à partir des règles :

  • redirection.io n'est pas installé sur le site web/chemin que vous testez ;
  • l'agent redirection.io installé sur votre site web n'est pas encore à jour. Veuillez réessayer dans quelques secondes ;
  • l'intégration de l'agent redirection.io utilisée sur votre site web est une version ancienne ou obsolète ;
  • un autre composant de votre infrastructure interfère et a généré une réponse différente (ou a transformé la réponse) pour cette URL.

Vérifier toutes les règles du jeu de règles

Lorsqu'un jeu de règles s'agrandit, il peut devenir très difficile de surveiller chaque règle une par une. Il y a toujours un moment où, en ajoutant une nouvelle règle, on se demandera si cette nouvelle règle ne va pas briser le comportement d'une autre règle du jeu de règles. Les clients du plan Pro peuvent bénéficier d'une fonctionnalité très utile de redirection.io pour résoudre ce problème : la page "Tester toutes les règles".

L'étape "impact" du formulaire de création et d'édition de règles aide, mais elle se concentre sur la règle en cours d'édition, et non sur son impact sur les autres règles. Avec la fonctionnalité "tester toutes les règles", vous pouvez vous concentrer sur la création de nouvelles règles et laisser redirection.io vérifier pour vous si ces nouvelles règles sont incompatibles avec les règles précédemment créées.

Par exemple, imaginez que vous avez créé quelques règles :

The initial ruleset capture

Des exemples ont été attachés à ces règles, et vous avez testé que ces requêtes d'exemple fonctionnent comme prévu :

Successful "test all the rules" test

Imaginez que, quelque temps plus tard, vous deviez créer une nouvelle règle :

The ruleset capture once a new draft rule has been created

Bien sûr, ce jeu de règles semble naïf, et vous pourriez être en mesure de détecter des problèmes simplement en regardant les règles, mais que se passe-t-il si votre plan de redirection compte des milliers de règles ?

Une nouvelle exécution de "tester toutes les règles" montre maintenant un problème potentiel, car l'un des exemples attachés à l'une des deux "anciennes" règles ne fonctionne plus comme prévu lors de la dernière édition de cette règle :

An error is happening during the test of all rules

Faites défiler vers le bas, et vous obtiendrez encore plus d'informations :

Details about the error that happened during the test of all rules

Cela permet de localiser les règles existantes pour lesquelles les exemples attachés ne seront pas traités de la même manière par redirection.io si la nouvelle règle est publiée. Modifiez ces règles pour vérifier le comportement des exemples, enregistrez ces règles et vous êtes libre de publier ce nouveau jeu de règles en toute confiance !

Priorités des règles

Comme vu dans les paragraphes ci-dessus, les règles peuvent parfois entrer en collision. Par exemple, vous pourriez créer une règle "catch-all", en utilisant un marqueur, et ajouter une règle plus spécifique pour une URL précise incluse dans la règle "catch-all".

Dans ce cas, la règle générale est : la règle avec la priorité la plus élevée l'emporte toujours. Cela signifie que les actions définies dans la règle de priorité plus élevée remplaceront toujours les actions de la même famille des règles de priorité inférieure.

Paramètres du jeu de règles

Ces paramètres sont disponibles si votre projet utilise une version d'agent au moins 2.1.0.

Lorsque vous rédigez un ensemble de règles de redirection pour votre site web, vous pouvez vouloir configurer un comportement commun pour vos règles. Bien que nous suivions généralement les normes et les RFC, celles-ci ne correspondent pas toujours parfaitement aux exigences commerciales ou réelles.

Sous le menu "Paramètres > Fonctionnalités" d'un projet, vous pouvez modifier les paramètres suivants :

Ruleset behavior configuration

ignorer la casse des URL

Le paramètre ignorer la casse des URL est désactivé par défaut lors de la création d'un nouveau projet, et peut être modifié par les éditeurs de projet.

S'il est désactivé, les URL avec des casses différentes sont considérées comme des ressources différentes (ce qui respecte les normes). Cela signifie que, si vous créez une redirection pour l'URL /test, elle ne redirigera pas une requête vers /TEST.

L'activation de ce paramètre modifie le comportement, car l'agent de redirection ignorera la casse de l'URL de la requête lors de sa correspondance avec votre jeu de règles. En d'autres termes, si ce paramètre est activé, une règle de redirection pour l'URL /test redirigera également une requête vers /TEST.

ignorer les paramètres de query-string marketing lors de la correspondance

Ce paramètre est activé par défaut pour tous les projets nouvellement créés, et peut être modifié par les éditeurs de projet.

Les paramètres marketing sont des paramètres de requête d'URL très couramment utilisés en marketing, pour suivre l'efficacité des campagnes de marketing en ligne. Il y a 5 paramètres fréquemment utilisés :

Nom du paramètre But Obligatoire Exemple
utm_source Identifier l'annonceur, le site, la publication, etc. qui envoie le trafic Oui utm_source=google
utm_medium Identifier le type de média publicitaire ou marketing (email, cpc, bannière, etc.) Oui utm_medium=cpc
utm_campaign Identifier le nom de la campagne ou la promotion du produit Oui utm_campaign=winter-sale
utm_term Identifier les mots-clés de recherche Non utm_term=cookbook
utm_content Identifier le lien spécifique qui a été cliqué pour amener l'utilisateur à la page Non utm_content=footer-link

Bien que ces paramètres de requête fournissent des informations très utiles à des fins marketing, ils produisent des URL différentes, d'un point de vue strictement technique. En d'autres termes, selon les normes, il n'y a aucune raison de considérer que les URL /test et /test?utm_source=google font référence à la même ressource. Cependant, la réalité prouve que, si vous avez configuré une règle de redirection pour l'URL /test, vous voudrez généralement qu'une requête vers /test?utm_source=google soit également redirigée.

C'est exactement ce que permet l'activation de ce paramètre : lorsqu'il est activé, les paramètres de requête seront ignorés lors de la tentative de trouver une règle de redirection qui correspond à la requête. Si vos campagnes marketing nécessitent d'autres paramètres de requête, il est possible de les ajouter dans le champ "paramètres de requête marketing".

transmettre les paramètres de query-string marketing à la cible de redirection

Ce paramètre est activé par défaut pour tous les projets nouvellement créés, et peut être modifié par les éditeurs de projet.

Lorsque le paramètre précédent est activé, ce paramètre permet de transmettre les paramètres marketing capturés à la cible de redirection. Par exemple, imaginez que votre jeu de règles contient une règle redirigeant les requêtes de /test vers l'URL cible /example. Avec ce paramètre activé, une requête vers /test?utm_source=google sera redirigée vers /example?utm_source=google. Si désactivé, la redirection sera effectuée vers /example (sans les paramètres de requête marketing).

Templates de marqueurs

Les templates de marqueurs sont utiles pour définir des marqueurs à l'échelle du projet, qui peuvent être facilement réutilisés d'une règle à l'autre. Par exemple, imaginez que vous ayez besoin de définir plusieurs règles contenant un paramètre country, dont la valeur peut être de, es, fr, it, uk ou us. Il peut être un peu répétitif de recréer le même marqueur dans toutes ces règles.

Les templates de marqueurs sont utiles dans un tel cas, car ils permettent de définir des marqueurs qui peuvent être utilisés dans plusieurs règles, sans avoir besoin de les redéfinir à chaque fois.

La configuration des templates de marqueurs se fait en quelques clics :

  1. redirection.io project settings, marker templates listDans les paramètres de votre projet, sous l'onglet "fonctionnalités", localisez la section "Templates de marqueurs"
  2. Cliquez sur le bouton "Ajouter un nouveau template de marqueur", cela ouvre un formulaire dans le panneau latéral
  3. redirection.io project settings, marker template creation formRemplissez le formulaire de création de template de marqueur :
    • définissez un "Nom CSV" : cette chaîne sera utilisée lors de l'importation de règles. Chaque occurrence de cette chaîne sera remplacée par un marqueur de ce type ;
    • le "Nom du marqueur" est le nom unique de ce template de marqueur ;
    • remplissez les onglets "restrictions" et "transformations" pour définir le comportement de ce marqueur.

Une fois qu'un template de marqueur a été défini, vous pouvez l'utiliser dans le formulaire de création de règle : using a marker template in a rule Si la définition de ce marqueur "country" change, rendez-vous simplement dans les paramètres du template de marqueur et modifiez le modèle ; il vous sera proposé de mettre à jour toutes les règles associées également.

Vous pouvez également vouloir modifier ce marqueur pour une seule règle – cliquez simplement sur le nom du marqueur dans le formulaire d'édition de la règle, et il vous sera proposé de "dissocier" ce marqueur du template de marqueur :

Unlink a marker instance from the associated marker template

Publication et historique des modifications

Une fois que vous avez effectué plusieurs modifications à votre jeu de règles, vous pouvez vouloir appliquer ces modifications sur vos instances de production :

  1. Ruleset changes reviewRegardez en haut de l'écran : la barre orange indique qu'il y a des modifications non publiées dans votre jeu de règles brouillon. Cela signifie que de nouvelles règles ont été créées, mais ne sont pas encore publiées - elles sont invisibles pour les instances d'agent. Les règles modifiées sont marquées d'un badge "BROUILLON" et sont toujours affichées comme les premiers éléments de la liste des règles, quel que soit l'ordre de tri défini.
  2. Ruleset changes publicationUne fois que vous avez examiné les modifications, vous pouvez les publier à l'aide du bouton "Publier les modifications". Cela vous demandera un commentaire de publication facultatif, le bon endroit pour expliquer ce que vous venez de faire pour une compréhension ultérieure.
  3. après quelques secondes, selon votre plan, les nouvelles règles devraient être appliquées à vos instances. Rendez-vous sur l'écran "instances" du projet, vous devriez pouvoir voir quelles instances sont à jour.

Quand mes règles sont-elles appliquées ?

Vos règles de redirection nouvellement créées devraient être appliquées sur votre site web après un court délai – généralement environ 20 secondes. Vous pouvez vérifier quels agents sont à jour sur l'écran "instances" de votre projet, qui liste les instances en cours d'exécution, la date de leur dernière mise à jour et le nombre de règles qu'elles utilisent.

Cette page a été mise à jour le 30 juin 2025
Vous ne trouvez pas votre réponse ?