Condividi tramite


Riscrivere le intestazioni di richiesta e risposta HTTP con il gateway applicazione di Azure - Portale di Azure

Questo articolo descrive come usare il portale di Azure per configurare un'istanza SKU v2 del gateway applicazione per riscrivere le intestazioni HTTP nelle richieste e nelle risposte.

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Operazioni preliminari

Per completare i passaggi descritti in questo articolo, è necessario disporre di un'istanza dello SKU v2 del gateway applicazione. La riscrittura delle intestazioni non è supportata nello SKU v1. Se non si dispone di uno SKU v2, creare un'istanza dello SKU v2 del gateway applicazione prima di iniziare.

Creare oggetti obbligatori

Per configurare la riscrittura dell'intestazione HTTP, è necessario completare questi passaggi.

  1. Creare gli oggetti necessari per la riscrittura dell'intestazione HTTP:

    • Azione riscrittura: consente di specificare la richiesta e i campi di intestazione della richiesta che si intendono riscrivere e il nuovo valore per le intestazioni. È possibile associare una o più condizioni di riscrittura a un'azione di riscrittura.

    • Condizione riscrittura: configurazione facoltativa. Le condizioni di riscrittura valutano il contenuto delle richieste e delle risposte HTTP(S). L'azione di riscrittura si verificherà se la richiesta o la risposta HTTP(S) corrisponde alla condizione di riscrittura.

      Se si associano più condizioni a un'azione, l'azione si verifica solo quando vengono soddisfatte tutte le condizioni. In altre parole, si tratta di un'operazione AND logica.

    • Regola riscrittura: contiene più combinazioni di azioni di riscrittura/riscrittura della condizione.

    • Sequenza di regole: consente di determinare l'ordine in cui vengono eseguite le regole di riscrittura. Questa configurazione è utile quando sono presenti più regole di riscrittura in un set di riscrittura. Prima viene eseguita una regola di riscrittura con un valore di sequenza di regole inferiore. Se si assegna lo stesso valore della sequenza di regole a due regole di riscrittura, l'ordine di esecuzione non è deterministico.

    • Set di riscrittura: contiene più regole di riscrittura che verranno associate con una regola di gestione delle richieste.

  2. Collegare il set di riscrittura a una regola di gestione. La configurazione di riscrittura viene collegata al listener di origine tramite la regola di gestione. Quando si usa una regola di gestione di base, la configurazione di riscrittura delle intestazioni viene associata a un listener di origine e la riscrittura è globale. Quando viene usata una regola di gestione basata sul percorso, la configurazione di riscrittura delle intestazioni è definita nella mappa del percorso URL. In tal caso, si applica solo all'area del percorso specifica di un sito.

È possibile creare più set di riscrittura dell'intestazione HTTP e applicare ogni riscrittura impostata su più listener. Tuttavia, è possibile applicare un solo set di regole di riscrittura a un listener specifico.

Accedere ad Azure

Accedere al portale di Azure con il proprio account Azure.

Configurare la riscrittura dell'intestazione

In questo esempio, si modificherà un URL di reindirizzamento riscrivendo l'intestazione del percorso nella risposta HTTP inviata da un'applicazione back-end.

  1. Selezionare Tutte le risorse e quindi selezionare il gateway applicazione.

  2. Selezionare Riscritture nel riquadro sinistro.

  3. Selezionare Set di riscrittura:

    Add rewrite set

  4. Specificare un nome per il set di riscrittura e associarlo a una regola di gestione:

    • Immettere il nome del set di riscrittura nella casella Nome.

    • Selezionare una o più regole elencate nell'elenco Regole associate. È possibile selezionare solo le regole che non sono state associate ad altri set di riscrittura. Le regole già associate ad altri set di riscrittura sono disattivate.

    • Selezionare Avanti.

      Add name and association

  5. Creare una regola di riscrittura:

    • Selezionare Aggiungi regola di riscrittura.

      Add rewrite rule

    • Immettere un nome per la regola di riscrittura nella casella Nome regola di riscrittura. Immettere un numero nella casella Sequenza regole.

      Add rewrite rule name

  6. In questo esempio si riscriverà l'intestazione della posizione solo quando contiene un riferimento ad azurewebsites.net. A tale scopo, viene aggiunta una condizione per valutare se l'intestazione della posizione nella risposta contiene azurewebsites.net:

    • Selezionare Aggiungi una condizione e quindi selezionare la casella contenente le istruzioni If per espanderla.

      Add a condition

    • Nell'elenco Tipo di variabile da controllare, selezionare intestazione HTTP.

    • Nell'elenco Tipo di intestazione, selezionare Risposta.

    • Poiché in questo esempio viene valutata l'intestazione della posizione, che è un'intestazione comune, selezionare Intestazione comune in Nome intestazione.

    • Nell'elenco Intestazione comune, selezionare Posizione.

    • In Distinzione maiuscole/minuscole, selezionare No.

    • Nell'elenco Operatore, selezionare Uguale (=).

    • Immettere un modello di espressione regolare. In questo esempio, viene usato il criterio (https?):\/\/.*azurewebsites.net(.*)$.

    • Seleziona OK.

      Configure an If condition

  7. Aggiungere un'azione per riscrivere l'intestazione della posizione:

    • Nell'elenco Tipo di azione, selezionare Imposta.

    • Nell'elenco Tipo di intestazione, selezionare Risposta.

    • In Nome intestazione, selezionare Intestazione comune.

    • Nell'elenco Intestazione comune, selezionare Posizione.

    • Immettere un valore dell'intestazione. In questo esempio, verrà usato {http_resp_Location_1}://contoso.com{http_resp_Location_2} come valore dell'intestazione. Questo valore sostituirà azurewebsites.net con contoso.com nell'intestazione della posizione.

    • Seleziona OK.

      Add an action

  8. Selezionare Crea per creare il set di riscrittura:

    Select Create

  9. Verrà aperta la visualizzazione Set di riscrittura. Verificare che il set di riscrittura creato sia presente nell'elenco dei set di riscrittura:

    Rewrite set view

Passaggi successivi

Per altre informazioni su come configurare alcuni casi d'uso comuni, vedere Scenari comuni di riscrittura delle intestazioni.