Condividi tramite


Azioni del set di regole

Un set di regole di Frontdoor di Azure è costituito da regole con una combinazione di condizioni e azioni di corrispondenza. Questo articolo fornisce una descrizione dettagliata delle azioni che è possibile usare in un set di regole. Un'azione definisce il comportamento applicato a un tipo di richiesta identificato da una o più condizioni di corrispondenza. In un set di regole, una regola può avere fino a cinque azioni. Frontdoor supporta anche la variabile server in un'azione del set di regole.

In un set di regole sono disponibili le azioni seguenti:

Override della configurazione della route

L'azione di override della configurazione della route viene usata per eseguire l'override del gruppo di origine o della configurazione di memorizzazione nella cache per la richiesta. È possibile scegliere di eseguire l'override o rispettare le configurazioni del gruppo di origine specificate nella route. Tuttavia, quando si esegue l'override della configurazione della route, è necessario configurare la memorizzazione nella cache. In caso contrario, la memorizzazione nella cache viene disabilitata per la richiesta.

È anche possibile eseguire l'override del modo in cui i file vengono memorizzati nella cache per richieste specifiche, tra cui:

  • Eseguire l'override del comportamento di memorizzazione nella cache specificato dall'origine.
  • Modalità di utilizzo dei parametri della stringa di query per generare la chiave della cache della richiesta.
  • Valore TTL per controllare per quanto tempo il contenuto rimane nella cache.

Proprietà

Proprietà Valori supportati
Override del gruppo di origine
  • Sì: eseguire l'override del gruppo di origine usato per la richiesta.
  • No: usare il gruppo di origine specificato nella route.
Memorizzazione nella cache
  • Abilitato: forzare l'abilitazione della memorizzazione nella cache per la richiesta.
  • Disabilitato: forzare la disattivazione della memorizzazione nella cache per la richiesta.

Quando override del gruppo di origine è impostato su , impostare le proprietà seguenti:

Proprietà Valori supportati
Gruppo di origine Gruppo di origine a cui deve essere instradata la richiesta. Questa impostazione esegue l'override della configurazione specificata nella route dell'endpoint di Frontdoor.
Protocollo di inoltro Protocollo da usare per Frontdoor per l'inoltro della richiesta all'origine. I valori supportati sono solo HTTP, solo HTTPS, Corrispondenza richiesta in ingresso. Questa impostazione esegue l'override della configurazione specificata nella route dell'endpoint di Frontdoor.

Quando la memorizzazione nella cache è impostata su Abilitata, impostare le proprietà seguenti:

Proprietà Valori supportati
Comportamento di memorizzazione nella cache della stringa di query
  • Ignora stringa di query: le stringhe di query non vengono considerate quando viene generata la chiave della cache. Nei modelli ARM, impostare la proprietà queryStringCachingBehavior su IgnoreQueryString.
  • Usa la stringa di query: ogni URL univoco ha una propria chiave della cache. Nei modelli ARM, usare queryStringCachingBehavior di UseQueryString.
  • Ignora stringa di query specificata: le stringhe di query specificate nei parametri vengono escluse quando viene generata la chiave della cache. Nei modelli ARM, impostare la proprietà queryStringCachingBehavior su IgnoreSpecifiedQueryStrings.
  • Includi la stringa di query specificata: le stringhe di query specificate nei parametri vengono incluse quando viene generata la chiave della cache. Nei modelli ARM, impostare la proprietà queryStringCachingBehavior su IncludeSpecifiedQueryStrings.
Parametri di query Elenco dei nomi dei parametri della stringa di query, separati da virgole. Questa proprietà viene impostata solo quando il comportamento di memorizzazione nella cache della stringa di query è impostato su Ignora stringhe di query specificate o Includi stringhe di query specificate.
Compressione
  • Abilitata: Frontdoor comprime dinamicamente il contenuto sul bordo, ottenendo una risposta più piccola e veloce. Per altre informazioni, vedere Compressione dei dati. Nei modelli ARM, impostare la proprietà isCompressionEnabled su Enabled.
  • Disabilitati. Frontdoor non esegue la compressione. Nei modelli ARM, impostare la proprietà isCompressionEnabled su Disabled.
Comportamento cache
  • Rispetta l'origine: Frontdoor rispetta sempre la direttiva di intestazione della risposta all'origine. Se manca la direttiva di origine, Frontdoor memorizza nella cache il contenuto da 1 a 3 giorni. Nei modelli ARM, impostare la proprietà cacheBehavior su HonorOrigin.
  • Esegui sempre l'override: il valore TTL restituito dall'origine viene sovrascritto con il valore specificato nell'azione. Questo comportamento viene applicato solo se la risposta è memorizzabile nella cache. Nei modelli ARM, impostare la proprietà cacheBehavior su OverrideAlways.
  • Esegui l'override se l'origine manca: se non viene restituito alcun valore TTL dall'origine, la regola imposta il valore TTL sul valore specificato nell'azione. Questo comportamento viene applicato solo se la risposta è memorizzabile nella cache. Nei modelli ARM, impostare la proprietà cacheBehavior su OverrideIfOriginMissing.
Durata cache Quando il comportamento della cache è impostato su Override always o Override if origin missing, questi campi devono specificare la durata della cache da usare. La durata massima corrisponde a 366 giorni. Questa proprietà viene impostata solo quando il comportamento della cache è impostato su Eseguire sempre l'override o Esegui l'override se l'origine manca.
  • Nel portale di Azure, specificare i giorni, le ore, i minuti e i secondi.
  • Nei modelli ARM, usare cacheDuration per specificare la durata nel formato d.hh:mm:ss.

Esempi

In questo esempio vengono indirizzate tutte le richieste corrispondenti a un gruppo di origine denominato MyOriginGroup, indipendentemente dalla configurazione nella route dell'endpoint di Frontdoor.

Screenshot del portale che mostra l'azione di override del gruppo di origine.

In questo esempio viene impostata la chiave della cache in modo da includere un parametro della stringa di query denominato customerId. La compressione è abilitata e i criteri di memorizzazione nella cache dell'origine vengono rispettati.

Screenshot del portale che mostra l'azione della stringa di query della chiave della cache.

In questo esempio si esegue l'override della scadenza della cache a 6 ore per le richieste corrispondenti che non specificano già una durata della cache. Frontdoor ignora la stringa di query quando determina la chiave della cache e la compressione è abilitata.

Screenshot del portale che mostra l'azione di scadenza della cache.

Modifica intestazione richiesta

Usare l'azione modifica intestazione della richiesta per modificare le intestazioni nella richiesta quando viene inviata all'origine.

Proprietà

Proprietà Valori supportati
Operatore
  • Accoda: l'intestazione specificata viene aggiunta alla richiesta con il valore specificato. Se l'intestazione è già presente, il valore viene aggiunto al valore dell'intestazione esistente usando la concatenazione di stringhe. Non vengono aggiunti delimitatori. Nei modelli ARM, usare headerAction di Append.
  • Sovrascrivi: l'intestazione specificata viene aggiunta alla richiesta con il valore specificato. Se l'intestazione è già presente, il valore specificato sovrascrive quello esistente. Nei modelli ARM, usare headerAction di Overwrite.
  • Elimina: se l'intestazione specificata nella regola è presente, l'intestazione viene eliminata dalla richiesta. Nei modelli ARM, usare headerAction di Delete.
Nome intestazione Nome dell'intestazione da modificare.
Valore intestazione Valore da accodare o sovrascrivere.

Esempio

In questo esempio, il valore AdditionalValue viene aggiunto all'intestazione della richiesta MyRequestHeader. Se l'origine imposta l'intestazione della risposta su un valore di ValueSetByClient, dopo l'applicazione di questa azione l'intestazione della richiesta avrà il valore ValueSetByClientAdditionalValue.

Screenshot del portale che mostra l'azione di modifica dell'intestazione della richiesta.

Nota

Alcune intestazioni riservate di Frontdoor di Azure non possono essere modificate usando azioni del motore regole, incluse le azioni per modificare le intestazioni delle richieste e le intestazioni di risposta. L'elenco seguente di intestazioni riservate non può essere modificato, insieme alle intestazioni precedute da x-ec e 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

Modifica intestazione risposta

Usare l'azione modifica intestazione della risposta per modificare le intestazioni presenti nelle risposte prima che vengano restituite ai client.

Proprietà

Proprietà Valori supportati
Operatore
  • Accoda: l'intestazione specificata viene aggiunta alla risposta con il valore specificato. Se l'intestazione è già presente, il valore viene aggiunto al valore dell'intestazione esistente usando la concatenazione di stringhe. Non vengono aggiunti delimitatori. Nei modelli ARM, usare headerAction di Append.
  • Sovrascrivi: l'intestazione specificata viene aggiunta alla risposta con il valore specificato. Se l'intestazione è già presente, il valore specificato sovrascrive quello esistente. Nei modelli ARM, usare headerAction di Overwrite.
  • Elimina: se l'intestazione specificata nella regola è presente, l'intestazione viene eliminata dalla risposta. Nei modelli ARM, usare headerAction di Delete.
Nome intestazione Nome dell'intestazione da modificare.
Valore intestazione Valore da accodare o sovrascrivere.

Esempio

In questo esempio si elimina l'intestazione con il nome X-Powered-By dalle risposte prima che vengano restituite al client.

Screenshot del portale che mostra l'azione di modifica dell'intestazione della risposta.

Nota

Alcune intestazioni riservate di Frontdoor di Azure non possono essere modificate usando azioni del motore regole, incluse le azioni per modificare le intestazioni delle richieste e le intestazioni di risposta. L'elenco seguente di intestazioni riservate non può essere modificato, insieme alle intestazioni precedute da x-ec e 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

Reindirizzamento URL

Usare l'azione Reindirizzamento URL per reindirizzare i client a un nuovo URL. Ai client viene inviata una risposta di reindirizzamento da Frontdoor. Frontdoor di Azure supporta l'acquisizione dinamica del percorso URL con variabile del server {url_path:seg#} e converte il percorso URL in lettere minuscole o maiuscole con {url_path.tolower} o {url_path.toupper}. Per altre informazioni, vedere Variabili del server.

Proprietà

Proprietà Valori supportati
Tipo di reindirizzamento Il tipo di risposta da restituire al richiedente.
  • Nel portale di Azure: Trovato (302), Spostato (301), Reindirizzamento temporaneo (307), Reindirizzamento permanente (308).
  • Nei modelli ARM: Found, Moved, TemporaryRedirect, PermanentRedirect
Protocollo di reindirizzamento
  • Nel portale di Azure: Match Request, HTTP, HTTPS
  • Nei modelli ARM: MatchRequest, Http, Https
Host di destinazione Il nome host a cui reindirizzare la richiesta. Lasciare vuoto questo campo per mantenere l'host in ingresso.
Percorso di destinazione Il percorso da usare nel reindirizzamento. Includere l'elemento / principale. Lasciare vuoto questo campo per mantenere il percorso in ingresso.
Stringa di query La stringa di query usata nel reindirizzamento. Non includere l'elemento ?. principale. Lasciare vuoto questo campo per mantenere la stringa di query in ingresso.
Frammento di destinazione Il frammento da usare nel reindirizzamento. Lasciare vuoto questo campo per mantenere il frammento in ingresso.

Esempio

In questo esempio la richiesta viene reindirizzata a https://contoso.com/exampleredirection?clientIp={client_ip}, mantenendo il frammento. Viene usato un reindirizzamento temporaneo HTTP (307). L'indirizzo IP del client viene usato al posto del token {client_ip} all'interno dell'URL usando la variabile del server client_ip.

Screenshot del portale che mostra l'azione di reindirizzamento URL.

Riscrittura URL

Usare l'azione di riscrittura URL per riscrivere il percorso di una richiesta instradata all'origine. Frontdoor di Azure supporta l'acquisizione dinamica del percorso URL con variabile del server {url_path:seg#} e converte il percorso URL in lettere minuscole o maiuscole con {url_path.tolower} o {url_path.toupper}. Per altre informazioni, vedere Variabili del server.

Proprietà

Proprietà Valori supportati
Criterio di origine Definire il criterio di origine nel percorso URL da sostituire. Attualmente, il criterio di origine usa una corrispondenza basata su prefisso. Per trovare la corrispondenza con tutti i percorsi URL, usare una barra (/) come valore del criterio di origine.
Destinazione Definire il percorso di destinazione da usare nella riscrittura. Il percorso di destinazione sovrascrive il criterio di origine.
Mantenere il percorso senza corrispondenza Se impostato su , il percorso rimanente dopo che il criterio di origine viene aggiunto al nuovo percorso di destinazione.

Esempio

In questo esempio vengono riscritte tutte le richieste al percorso /redirectione non viene mantenuto il resto del percorso.

Screenshot del portale che mostra l'azione di riscrittura URL.

Importante

Frontdoor di Azure (classico) verrà ritirato il 31 marzo 2027. Per evitare interruzioni del servizio, è importante eseguire la migrazione dei profili di Frontdoor di Azure (classico) al livello Standard o Premium di Frontdoor di Azure entro marzo 2027. Per altre informazioni, vedere Ritiro di Frontdoor di Azure (classico).

In Frontdoor di Azure (versione classica) un Motore regole può contenere fino a 25 regole contenenti condizioni di corrispondenza e le azioni associate. Questo articolo fornisce una descrizione dettagliata di ogni azione che è possibile definire in una regola.

Un'azione definisce il comportamento applicato al tipo di richiesta che corrisponde a una o più condizioni di corrispondenza. Nella configurazione del motore regole, una regola può avere fino a 10 condizioni di corrispondenza e 5 azioni. È possibile avere una sola azione Sostituisci configurazione routing in una singola regola.

Le azioni seguenti sono disponibili per l'uso nella configurazione del motore regole.

Modifica intestazione richiesta

Usare queste azioni per modificare le intestazioni presenti nelle richieste inviate al back-end.

Campi obbligatori

Azione Nome intestazione HTTP Valore
Aggiunta Se questa opzione viene selezionata e la regola corrisponde, l'intestazione specificata in Nome intestazione viene aggiunta alla richiesta con il valore specificato. Se l'intestazione è già presente, il valore viene aggiunto a quello esistente. String
Sovrascrivi Se questa opzione viene selezionata e la regola corrisponde, l'intestazione specificata in Nome intestazione viene aggiunta alla richiesta con il valore specificato. Se l'intestazione è già presente, il valore specificato sovrascrive quello esistente. String
Elimina Se questa opzione viene selezionata con regole corrispondenti e l'intestazione specificata nella regola è presente, l'intestazione viene eliminata dalla richiesta. String

Modifica intestazione risposta

Usare questa azione per modificare le intestazioni presenti nelle risposte restituite ai client.

Campi obbligatori

Azione Nome intestazione HTTP Valore
Aggiunta Se questa opzione viene selezionata e la regola corrisponde, l'intestazione specificata in Nome intestazione viene aggiunta alla risposta con il valore specificato. Se l'intestazione è già presente, il valore viene aggiunto a quello esistente. String
Sovrascrivi Se questa opzione è selezionata e la regola corrisponde, l'intestazione specificata in Nome intestazione viene aggiunta alla risposta con il valore specificato. Se l'intestazione è già presente, il valore sovrascrive quello esistente. String
Elimina Se questa opzione viene selezionata con regole corrispondenti e l'intestazione specificata nella regola è presente, l'intestazione viene eliminata dalla risposta. String

Sostituzione delle configurazioni della route

Tipo di route: reindirizzamento

Usare queste azioni per reindirizzare i client a un nuovo URL.

Campi obbligatori

Campo Descrizione
Tipo di reindirizzamento Il reindirizzamento è un modo per inviare utenti/client da un URL a un altro. Un tipo di reindirizzamento imposta il codice di stato usato dai client per comprendere lo scopo del reindirizzamento.

È possibile selezionare i codici di stato di reindirizzamento seguenti: Trovato (302), Spostato (301), Reindirizzamento temporaneo (307) e Reindirizzamento permanente (308).
Protocollo di reindirizzamento Mantenere il protocollo in base alla richiesta in ingresso o definire un nuovo protocollo per il reindirizzamento. Ad esempio, selezionare "HTTPS" per il reindirizzamento da HTTP a HTTPS.
Host di destinazione Impostare questa regola per modificare il nome host nell'URL per il reindirizzamento o altrimenti mantenere il nome host della richiesta in entrata.
Percorso di destinazione Consente di mantenere il percorso in base alla richiesta ricevuta o aggiornare il percorso nell'URL per il reindirizzamento.
Stringa di query Impostare questo valore per sostituire qualsiasi stringa di query esistente dall'URL della richiesta ricevuta o altrimenti mantenere il set originale delle stringhe di query.
Frammento di destinazione Il frammento di destinazione è la parte di URL successiva a '#', normalmente usata dai browser per puntare a una sezione specifica di una pagina. Impostare questo valore per aggiungere un frammento all'URL di reindirizzamento.

Tipo di route: Inoltra

Usare queste azioni per inoltrare i client a un nuovo URL. Queste azioni contengono anche azioni secondarie per le riscritture di URL e la memorizzazione nella cache.

Campo Descrizione
Pool back-end Selezionare il pool back-end per eseguire l'override e rispondere alle richieste; vengono visualizzati anche tutti i pool back-end preconfigurati attualmente nel profilo di Frontdoor.
Protocollo di inoltro Protocollo da usare per inoltrare la richiesta al back-end o per abbinare il protocollo della richiesta in ingresso.
Riscrittura URL Percorso da usare per la creazione della richiesta di riscrittura dell'URL da inoltrare al back-end.
Memorizzazione nella cache Abilitare la memorizzazione nella cache per la regola di gestione. Se abilitata, Frontdoor di Azure memorizza nella cache il contenuto statico.

Riscrittura URL

Usare questa impostazione per configurare un Percorso di inoltro personalizzato facoltativo da usare per la creazione della richiesta da inoltrare al back-end.

Campo Descrizione
Percorso di inoltro personalizzato Definire un percorso a cui le richieste vengono inoltrate.

Memorizzazione nella cache

Usare queste impostazioni per controllare il modo in cui i file vengono memorizzati nella cache per le richieste che contengono stringhe di query. Indica se memorizzare nella cache il contenuto basato su tutti i parametri o su parametri selezionati. È possibile usare queste impostazioni per sovrascrivere il valore TTL (time to live) in modo da controllare per quanto tempo il contenuto deve rimanere nella cache. Per forzare la memorizzazione nella cache come azione, impostare il campo Memorizzazione nella cache su "Abilitata". Quando si impone la memorizzazione nella cache, vengono visualizzate le opzioni seguenti:

Comportamento cache Descrizione
Ignora stringa di query Una volta memorizzati gli asset nella cache, tutte le richieste che seguono ignorano le stringhe di query fino alla scadenza degli asset.
Usa stringa di query Ogni richiesta con un URL univoco, inclusa la stringa di query, viene trattata come asset univoco con la propria cache.
Ignora stringhe di query specificate Le stringhe di query dell'URL della richiesta elencate nell'impostazione "Parametri query" vengono ignorate per la memorizzazione nella cache.
Includi stringhe di query specificate Le stringhe di query dell'URL della richiesta elencate nell'impostazione "Parametri query" vengono usate per la memorizzazione nella cache.
Altri campi Descrizione
Compressione dinamica Frontdoor può comprimere dinamicamente il contenuto nel perimetro, generando una risposta più piccola e veloce.
Parametri di query Un elenco di parametri consentiti o non consentiti delimitati da virgole da usare come base per la memorizzazione nella cache.
Usa durata cache predefinita Impostare per usare la durata predefinita della memorizzazione nella cache di Frontdoor di Azure o definire una durata di memorizzazione nella cache che ignora la direttiva di risposta all'origine.

Passaggi successivi