Actions d’ensemble de règles
Un ensemble de règles Azure Front Door est constitué de règles avec une combinaison de conditions de correspondance et d’actions. Cet article fournit les descriptions détaillées des actions que vous pouvez utiliser dans un ensemble de règles. Une action définit le comportement appliqué à un type de requête identifié par une ou plusieurs conditions de correspondance. Dans un ensemble de règles, une règle peut avoir jusqu’à cinq actions. Front Door prend également en charge la variable de serveur dans une action d’ensemble de règles.
Les actions suivantes peuvent être utilisées dans un ensemble de règles :
Remplacement de configuration d’itinéraire
L’action de remplacement de configuration de l’itinéraire est utilisée pour remplacer le groupe d’origine ou la configuration de mise en cache pour la requête. Vous pouvez choisir de remplacer ou d’honorer les configurations de groupe d’origine spécifiées dans l’itinéraire. Toutefois, lorsque vous substituez la configuration de l’itinéraire, vous devez configurer la mise en cache. Dans le cas contraire, la mise en cache est désactivée pour la requête.
Vous pouvez également remplacer la manière dont les fichiers sont mis en cache pour des requêtes spécifiques, notamment :
- Remplacez le comportement de mise en cache spécifié par l’origine.
- Mode d’utilisation des paramètres de chaîne de requête pour générer la clé de cache de la requête.
- La valeur de la durée de vie (TTL) pour contrôler la durée pendant laquelle le contenu reste dans le cache.
Propriétés
Propriété | Valeurs prises en charge |
---|---|
Remplacer le groupe d’origine |
|
Mise en cache |
|
Lorsque Remplacer le groupe d’origine est défini sur Oui, définissez les propriétés suivantes :
Propriété | Valeurs prises en charge |
---|---|
Groupe d’origines | Groupe d’origines vers lequel la demande doit être acheminée. Ce paramètre remplace la configuration spécifiée dans l’itinéraire du point de terminaison Front Door. |
Protocole de transfert | Protocole de Front Door à utiliser lors du transfert de la requête à l’origine. Les valeurs prises en charge sont HTTP uniquement, HTTPS uniquement, Mettre en correspondance la requête entrante. Ce paramètre remplace la configuration spécifiée dans l’itinéraire du point de terminaison Front Door. |
Lorsque la mise en cache est définie sur activé, définissez les propriétés suivantes :
Propriété | Valeurs prises en charge |
---|---|
Comportement de mise en cache des chaînes de requête |
|
Paramètres de requête | Liste des noms de paramètre de chaîne de requête, séparés par des virgules. Cette propriété est définie uniquement lorsque Comportement de mise en cache de la chaîne de requête est défini sur Ignorer les chaînes de requête spécifiées ou Inclure les chaînes de requête spécifiées. |
Compression |
|
Comportement du cache |
|
Durée du cache | Lorsque le Comportement du cache est défini sur Override always ou Override if origin missing , ces champs doivent spécifier la durée du cache à utiliser. La durée maximale est de 366 jours. Cette propriété est définie uniquement lorsque Comportement du cache est défini sur Substituer toujours ou sur Remplacer si l’origine est manquante.
|
Exemples
Dans cet exemple, nous acheminons toutes les demandes mises en correspondance vers un groupe d’origines nommé MyOriginGroup
, quelle que soit la configuration de l’itinéraire du point de terminaison Front Door.
Dans cet exemple, nous définissons la clé de cache pour inclure un paramètre de chaîne de requête nommé customerId
. La compression est activée et les stratégies de mise en cache de l’origine sont honorées.
Dans cet exemple, nous remplaçons l’expiration du cache à 6 heures pour les requêtes correspondantes qui ne spécifient pas déjà une durée de cache. Front Door ignore la chaîne de requête lorsqu’elle détermine la clé de cache, et la compression est activée.
Modifier l’en-tête de requête
Utilisez l’action modifier l’en-tête de requête pour modifier les en-têtes de la requête lorsqu’elle est envoyée à votre origine.
Propriétés
Propriété | Valeurs prises en charge |
---|---|
Opérateur |
|
Nom de l’en-tête | Nom de l'en-tête à modifier. |
Valeur de l’en-tête | Valeur à ajouter ou à remplacer. |
Exemple
Dans cet exemple, nous ajoutons la valeur AdditionalValue
à l'en-tête de requête MyRequestHeader
. Si l’origine affecte à l’en-tête de réponse la valeur ValueSetByClient
, une fois cette action appliquée, l’en-tête de requête a la valeur ValueSetByClientAdditionalValue
.
Remarque
Certains en-têtes réservés Azure Front Door ne peuvent pas être modifiés à l’aide d’actions du moteur de règles, y compris les actions pour modifier les en-têtes de requête et les en-têtes de réponse. La liste suivante d’en-têtes réservés ne peut pas être modifiée, ainsi que les en-têtes précédés de x-ec
et de x-fd
.
Accept-Ranges
Host
Connection
Content-Length
Transfer-Encoding
TE
Last-Modified
Keep-Alive
Expect
Upgrade
If-Modified-Since
If-Unmodified-Since
If-None-Match
If-Match
Range
If-Range
X-Ms-Via
X-Ms-Force-Refresh
X-MSEdge-Ref
Warning
Forwarded
Via
X-Forwarded-For
X-Forwarded-Proto
X-Forwarded-Host
X-Azure-RequestChain
X-Azure-FDID
X-Azure-RequestChainv2
X-Azure-Ref
Modifier l’en-tête de réponse
Utilisez l’action modifier l’en-tête de réponse pour modifier les en-têtes présents dans les réponses avant qu’ils ne soient retournés à vos clients.
Propriétés
Propriété | Valeurs prises en charge |
---|---|
Opérateur |
|
Nom de l’en-tête | Nom de l'en-tête à modifier. |
Valeur de l’en-tête | Valeur à ajouter ou à remplacer. |
Exemple
Dans cet exemple, nous supprimons l’en-tête avec le nom X-Powered-By
des réponses avant qu’elles ne soient retournées au client.
Remarque
Certains en-têtes réservés Azure Front Door ne peuvent pas être modifiés à l’aide d’actions du moteur de règles, y compris les actions pour modifier les en-têtes de requête et les en-têtes de réponse. La liste suivante d’en-têtes réservés ne peut pas être modifiée, ainsi que les en-têtes précédés de x-ec
et de x-fd
.
Accept-Ranges
Host
Connection
Content-Length
Transfer-Encoding
TE
Last-Modified
Keep-Alive
Expect
Upgrade
If-Modified-Since
If-Unmodified-Since
If-None-Match
If-Match
Range
If-Range
X-Ms-Via
X-Ms-Force-Refresh
X-MSEdge-Ref
Warning
Forwarded
Via
X-Forwarded-For
X-Forwarded-Proto
X-Forwarded-Host
X-Azure-RequestChain
X-Azure-FDID
X-Azure-RequestChainv2
X-Azure-Ref
Redirection d’URL
Utilisez l’action de redirection d’URL pour rediriger les clients vers une nouvelle URL. Les clients reçoivent une réponse de redirection de Front Door. Azure Front Door prend en charge la capture dynamique du chemin d’URL avec la variable de serveur {url_path:seg#}
, et convertit le chemin d’URL en minuscules ou en majuscules avec {url_path.tolower}
ou {url_path.toupper}
. Pour plus d’informations, consultez Variables du serveur.
Propriétés
Propriété | Valeurs prises en charge |
---|---|
Type de redirection | Type de réponse à renvoyer au demandeur.
|
Protocole de redirection |
|
Hôte de destination | Nom d’hôte vers lequel vous souhaitez rediriger la requête. Laissez vide pour conserver l’hôte entrant. |
Chemin de destination | Chemin d’accès à utiliser dans la redirection. Incluez l’interligne/ . Laissez vide pour conserver le chemin d’accès entrant. |
Chaîne de requête | Chaîne de requête utilisée dans la redirection. N’incluez pas l’interligne ? . Laissez vide pour conserver la chaîne de requête entrante. |
Fragment de destination | Fragment à utiliser dans la redirection. Laissez vide pour conserver le fragment entrant. |
Exemple
Dans cet exemple, nous redirigeons la requête vers https://contoso.com/exampleredirection?clientIp={client_ip}
, tout en conservant le fragment. Une redirection HTTP temporaire (307) est utilisée. L’adresse IP du client est utilisée à la place du jeton {client_ip}
dans l’URL à l’aide de la variable serveur client_ip
.
Réécrire URL
Utilisez l’action réécriture d’URL pour réécrire le chemin d’accès d’une requête en cours d’acheminement vers votre origine. Azure Front Door prend en charge la capture dynamique du chemin d’URL avec la variable de serveur {url_path:seg#}
, et convertit le chemin d’URL en minuscules ou en majuscules avec {url_path.tolower}
ou {url_path.toupper}
. Pour plus d’informations, consultez Variables du serveur.
Propriétés
Propriété | Valeurs prises en charge |
---|---|
Modèle source | Définissez le modèle source dans le chemin d’accès de l’URL à remplacer. Actuellement, le modèle source utilise une correspondance basée sur un préfixe. Pour correspondre à tous les chemins d’URL, utilisez une barre oblique (/ ) comme valeur de modèle source. |
Destination | Définissez le chemin d’accès de destination à utiliser lors de la réécriture. Le chemin d’accès de destination remplace le modèle source. |
Conserver le chemin d’accès sans correspondance | S’il est défini sur Oui, le chemin d’accès restant après le modèle source est ajouté au nouveau chemin d’accès de destination. |
Exemple
Dans cet exemple, nous réécrivons toutes les demandes dans le chemin d’accès /redirection
et ne conservons pas le reste du chemin d’accès.
Important
Azure Front Door (classique) va être mis hors service le 31 mars 2027. Pour éviter toute interruption de service, il est important de migrer vos profils Azure Front Door (classique) vers le niveau Azure Front Door Standard ou Premium au plus en mars 2027. Pour plus d’informations, consultez Mise hors service d’Azure Front Door (classique).
Dans Azure Front Door (classique), un moteur de règles peut comprendre jusqu’à 25 règles contenant des conditions de correspondance et des actions associées. Cet article fournit une description détaillée de chaque action que vous pouvez définir dans une règle.
Une action définit le comportement qui est appliqué au type de requête qui correspond à la condition ou à l’ensemble de conditions de correspondance. Dans la configuration du moteur de règles, une règle peut avoir jusqu’à 10 conditions de correspondance et 5 actions. Une règle ne peut comporter qu’une seule action Remplacer la configuration de routage.
Les actions suivantes peuvent être utilisées dans la configuration du moteur de règles.
Modifier l’en-tête de requête
Utilisez ces actions pour modifier les en-têtes présents dans les requêtes envoyées à votre serveur principal.
Champs obligatoires
Action | Nom de l’en-tête HTTP | Valeur |
---|---|---|
Ajouter | Quand cette option est sélectionnée et que la règle est en correspondance, l’en-tête spécifié dans Nom de l’en-tête est ajouté à la requête avec la valeur spécifiée. Si l’en-tête est déjà présent, la valeur sera ajoutée à la valeur existante. | String |
Remplacer | Quand cette option est sélectionnée et que la règle est en correspondance, l’en-tête spécifié dans Nom de l’en-tête est ajouté à la requête avec la valeur spécifiée. Si l’en-tête est déjà présent, la valeur spécifiée remplace la valeur existante. | String |
DELETE | Quand cette option est sélectionnée avec des règles en correspondance et que l’en-tête spécifié dans la règle est présent, l’en-tête est supprimé de la requête. | String |
Modifier l’en-tête de réponse
Utilisez ces actions pour modifier les en-têtes présents dans les réponses renvoyées à vos clients.
Champs obligatoires
Action | Nom de l’en-tête HTTP | Valeur |
---|---|---|
Ajouter | Quand cette option est sélectionnée et que la règle est en correspondance, l’en-tête spécifié dans Nom de l’en-tête est ajouté à la réponse en utilisant la Valeur spécifiée. Si l’en-tête est déjà présent, Valeur est ajoutée à la valeur existante. | String |
Remplacer | Lorsque cette option est sélectionnée et que la règle correspond, l’en-tête spécifié dans Nom de l’en-tête est ajouté à la réponse à l’aide de la Valeur spécifiée. Si l’en-tête est déjà présent, Valeur remplace la valeur existante. | String |
DELETE | Lorsque cette option est sélectionnée avec les règles correspondantes et que l’en-tête spécifié dans la règle est présent, l’en-tête est supprimé de la réponse. | String |
Remplacements de configuration de route
Type de route : Rediriger
Utilisez ces actions pour rediriger les clients vers une nouvelle URL.
Champs obligatoires
Champ | Description |
---|---|
Type de redirection | La redirection est un moyen d’envoyer les utilisateurs/clients d’une URL à une autre. Un type de redirection définit le code d’état utilisé par les clients pour comprendre l’objectif de la redirection. Vous pouvez sélectionner les codes d’état de redirection suivants : Trouvé (302), Déplacé (301), Redirection temporaire (307) et Redirection permanente (308). |
Protocole de redirection | Conservez le protocole conformément à la requête entrante ou définissez un nouveau protocole pour la redirection. Par exemple, sélectionnez « HTTPS » pour une redirection HTTP vers HTTPS. |
Hôte de destination | Définissez cette valeur pour modifier le nom d’hôte dans l’URL de la redirection ou pour conserver le nom d’hôte de la requête entrante. |
Chemin de destination | Vous pouvez conserver le chemin tel qu’il figure dans la requête entrante ou le mettre à jour dans l’URL pour la redirection. |
Chaîne de requête | Définissez cette valeur pour remplacer toutes les chaînes de requête existantes de l’URL de la requête entrante ou conservez le jeu de chaînes de requête d’origine. |
Fragment de destination | Le fragment de destination est la partie de l’URL qui figure après « # », normalement utilisée par les navigateurs pour accéder à une section spécifique d’une page. Définissez cette valeur pour ajouter un fragment à l’URL de redirection. |
Type de route : Transférer
Utilisez ces actions pour rediriger les clients vers une nouvelle URL. Ces actions contiennent aussi des sous-actions pour les réécritures et mises en cache d’URL.
Champ | Description |
---|---|
Pool principal | Sélectionnez le pool principal à remplacer et traitez les requêtes. Vous verrez tous vos pools principaux préconfigurés qui sont actuellement dans votre profil Front Door. |
Protocole de transfert | Protocole à utiliser pour transférer la requête au serveur principal ou reproduire le protocole de la requête entrante. |
Réécrire URL | Chemin à utiliser pour construire la demande de réécriture d’URL à transférer au serveur principal. |
Mise en cache | Activez la mise en cache pour cette règle de routage. Lorsque cette option est activée, Azure Front Door met en cache votre contenu statique. |
Réécrire URL
Utilisez ce paramètre pour configurer un chemin de transfert personnalisé facultatif à utiliser lors de la construction d’une requête à transférer au back-end.
Champ | Description |
---|---|
Chemin de transfert personnalisé | Définissez un chemin vers lequel les requêtes sont redirigées. |
Mise en cache
Utilisez ces paramètres pour contrôler la façon dont les fichiers sont mis en cache pour les demandes qui contiennent des chaînes de requête. Indique si votre contenu doit être mis en cache en fonction de tous les paramètres ou des paramètres sélectionnés. Vous pouvez utiliser ces paramètres pour remplacer la valeur de la durée de vie (TTL) pour contrôler la durée pendant laquelle le contenu reste dans le cache. Pour forcer la mise en cache comme action, définissez le champ de mise en cache sur « Activé ». Quand vous forcez la mise en cache, les options suivantes apparaissent :
Comportement du cache | Description |
---|---|
Ignorer la chaîne de requête | Une fois que la ressource est mise en cache, toutes les demandes qui suivent ignorent les chaînes de requête jusqu’à l’expiration de la ressource mise en cache. |
Utiliser la chaîne de requête | Chaque demande contenant une URL unique, y compris la chaîne de requête, est traitée comme une ressource unique avec son propre cache. |
Ignorer les chaînes de requête spécifiées | Les chaînes de requête d’URL de demande listées dans le paramètre « Paramètres de requête » sont ignorées pour la mise en cache. |
Inclure les chaînes de requête spécifiées | Les chaînes de requête d’URL de demande listées dans le paramètre « Paramètres de requête » sont utilisées pour la mise en cache. |
Autres champs | Description |
---|---|
Compression dynamique | Front Door peut compresser dynamiquement le contenu en périphérie, ce qui a pour effet de réduire la taille et le délai de la réponse. |
Paramètres de requête | Une liste de paramètres autorisés ou non, séparés par des virgules, à utiliser comme base pour la mise en cache. |
Utiliser la durée de mise en cache par défaut | Défini pour utiliser la durée de mise en cache par défaut d’Azure Front Door ou définissez une durée de mise en cache qui ignore la directive de réponse d’origine. |
Étapes suivantes
- Découvrez comment configurer votre premier ensemble de règles.
- Découvrez-en plus sur les Conditions de correspondance d’un ensemble de règles.
- Découvrez-en plus sur les ensembles de règles Azure Front Door.