Riscrittura URL
Frontdoor di Azure offre il supporto per la riscrittura dell'URL, consentendo di modificare il percorso della richiesta instradato all'origine. Questa potente funzionalità consente di definire condizioni che determinano quando è necessario riscrivere l'URL o le intestazioni specificate. Queste condizioni si basano sulle informazioni presenti nella richiesta e nella risposta.
Usando la riscrittura url, è possibile reindirizzare gli utenti finali a origini diverse in base a fattori quali il tipo di dispositivo o il tipo di file richiesto. L'azione di riscrittura URL può essere configurata facilmente all'interno del set di regole, fornendo un controllo granulare sul comportamento di routing.
Il modello di origine rappresenta il percorso URL nella richiesta iniziale da sostituire. Attualmente, il modello di origine usa un approccio di corrispondenza basato su prefisso. Per trovare la corrispondenza con tutti i percorsi URL, è possibile specificare una barra (/
) come valore per il modello di origine.
Nel contesto di un'azione di riscrittura URL, viene preso in considerazione solo il percorso dopo i modelli di corrispondenza nella configurazione della route per il modello di origine. Ad esempio, il set di regole considera /source-pattern
come modello di origine da riscrivere se si dispone di un formato URL in ingresso di contoso.com/pattern-to-match/source-pattern
. Dopo aver applicato la riscrittura dell'URL, il formato dell'URL in uscita sarà contoso.com/pattern-to-match/destination
.
Nei casi in cui è necessario rimuovere il /pattern-to-match
segmento dell'URL, è possibile impostare il percorso di origine per il gruppo di origine nella configurazione della route su /
.
Il percorso di destinazione rappresenta il percorso che sostituisce il modello di origine. Ad esempio, se il percorso dell'URL della richiesta è contoso.com/foo/1.jpg
e il modello di origine è /foo/
, specificando la destinazione come /bar/
risultato della distribuzione del contenuto dall'origine contoso.com/bar/1.jpg
.
Mantenere un percorso senza corrispondenza consente di controllare il modo in cui viene gestito il percorso rimanente dopo la gestione del modello di origine. Impostando il percorso senza corrispondenza su Sì, il percorso rimanente viene aggiunto al nuovo percorso. D'altra parte, impostandolo su No (impostazione predefinita) rimuoverà il percorso rimanente dopo il modello di origine.
Di seguito è riportato un esempio che illustra il comportamento del percorso non corrispondente:
Mantenere il percorso senza corrispondenza | Criterio di origine | Destinazione | Richiesta in ingresso | Contenuto servito dall'origine |
---|---|---|---|---|
Sì | / | /foo/ | contoso.com/sub/1.jpg | /foo/sub/1.jpg |
Sì | /sub/ | /foo/ | contoso.com/sub/image/1.jpg | /foo/image/1.jpg |
No | /sub/ | /foo/2.jpg | contoso.com/sub/image/1.jpg | /foo/2.jpg |
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).
Frontdoor di Azure (versione classica) offre il supporto per la riscrittura url configurando un percorso di inoltro personalizzato durante la configurazione della regola del tipo di routing in avanti. Per impostazione predefinita, se viene definita solo una barra (/*
), Frontdoor replica il percorso URL in ingresso nella richiesta inoltrata. L'intestazione host usata nella richiesta inoltrata si basa sulla configurazione del back-end selezionato. Per informazioni più dettagliate, vedere la documentazione dell'intestazione host back-end.
L'aspetto chiave della riscrittura dell'URL consiste nella possibilità di copiare qualsiasi parte corrispondente del percorso in ingresso al percorso inoltrato quando si usa un percorso di inoltro personalizzato con una corrispondenza con caratteri jolly. Nella tabella seguente viene illustrato un esempio di una richiesta in ingresso e del percorso inoltrato corrispondente quando si utilizza un percorso di inoltro personalizzato di /fwd/
. La sezione indicata come a/b/c rappresenta la parte che sostituisce la corrispondenza con caratteri jolly.
Percorso URL in ingresso | Percorso di corrispondenza | Percorso di inoltro personalizzato | Percorso inoltrato |
---|---|---|---|
/foo/a/b/c | /Foo/* | /fwd/ | /fwd/a/b/c |
Si consideri una regola di routing con la combinazione seguente di host front-end e percorsi configurati:
Hosts | Percorsi |
---|---|
www.contoso.com | /* |
/foo | |
/Foo/* | |
/foo/bar/* |
Nella tabella seguente vengono illustrati esempi di richieste in ingresso e delle route corrispondenti corrispondenti per la corrispondenza più specifica. Fornisce anche esempi di percorsi di inoltro personalizzati e dei percorsi inoltrati risultanti.
Si consideri, ad esempio, la seconda riga della tabella. Se la richiesta in ingresso è www.contoso.com/sub
e il percorso di inoltro personalizzato è impostato su /
, il percorso inoltrato sarà /sub
. Tuttavia, se il percorso di inoltro personalizzato è impostato su /fwd/
, il percorso inoltrato sarà /fwd/sub
. Le parti evidenziate dei percorsi indicano le parti che fanno parte della corrispondenza con caratteri jolly.
Richiesta in ingresso | Percorso di corrispondenza più specifico | / | /fwd/ | /foo/ | /foo/bar/ |
---|---|---|---|---|---|
www.contoso.com/ | /* | / | /fwd/ | /foo/ | /foo/bar/ |
www.contoso.com/sub | /* | /sub | /fwd/sub | /foo/sub | /foo/bar/sub |
www.contoso.com/a/b/c | /* | /a/b/c | /fwd/a/b/c | /foo/a/b/c | /foo/bar/a/b/c |
www.contoso.com/foo | /foo | / | /fwd/ | /foo/ | /foo/bar/ |
www.contoso.com/foo/ | /Foo/* | / | /fwd/ | /foo/ | /foo/bar/ |
www.contoso.com/foo/bar | /Foo/* | /bar | /fwd/bar | /foo/bar | /foo/bar/bar |
Nota
Frontdoor di Azure (versione classica) supporta solo la riscrittura url da un percorso statico a un altro percorso statico. Mantenere un percorso non corrispondente è supportato con Frontdoor di Azure Standard e Premium. Per altre informazioni, vedere Mantenere un percorso non corrispondente.
Configurazione della cache: se disabilitata o non specificata, le richieste che corrispondono a questa regola di routing non tentano di usare il contenuto memorizzato nella cache e recuperano sempre dal back-end. Per altre informazioni, vedere Memorizzazione nella cache con Frontdoor di Azure.
- Informazioni su come creare un profilo Frontdoor di Azure.
- Altre informazioni sul set di regole di Frontdoor di Azure
- Informazioni sull'architettura di routing di Frontdoor di Azure.