Reescrever cabeçalhos de solicitação e resposta HTTP com o Gateway de Aplicativo do Azure - Portal do Azure

Este artigo descreve como usar o portal do Azure para configurar uma instância SKU do Azure Application Gateway v2 para reescrever os cabeçalhos HTTP em solicitações e respostas.

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Antes de começar

Você precisa ter uma instância de SKU do Application Gateway v2 para concluir as etapas neste artigo. Não há suporte para reescrever cabeçalhos na SKU v1. Se você não tiver a SKU v2, crie uma instância de SKU v2 do Application Gateway antes de começar.

Criar objetos necessários

Para configurar a regravação de cabeçalho HTTP, siga estas etapas.

  1. Crie os objetos necessários para uma regravação de cabeçalho HTTP:

    • Ação de reescrita: usada para especificar os campos de cabeçalho de solicitação e solicitação que você pretende reescrever e o novo valor para os cabeçalhos. Você pode associar uma ou mais condições de regravação a uma ação de reescrita.

    • Condição de reescrita: uma configuração opcional. As condições de reescrita avaliam o conteúdo das solicitações e respostas HTTP(S). A ação de regravação ocorre se a solicitação ou resposta HTTP(S) corresponder à condição de regravação.

      Se você associar mais de uma condição a uma ação, a ação ocorrerá somente quando todas as condições forem atendidas. Em outras palavras, a operação é uma operação lógica AND .

    • Regra de reescrita: contém várias combinações de ação de reescrita/condição de reescrita.

    • Sequência de regras: ajuda a determinar a ordem em que as regras de reescrita são executadas. Essa configuração é útil quando você tem várias regras de regravação em um conjunto de reescritas. Uma regra de reescrita que tenha um valor de sequência de regra inferior é executada primeiro. Se você atribuir o mesmo valor de sequência de regras a duas regras de reescrita, a ordem de execução será não determinística.

    • Conjunto de reescrita: contém várias regras de regravação que serão associadas a uma regra de roteamento de solicitação.

  2. Anexe o conjunto de regravações a uma regra de roteamento. A configuração de regravação é anexada ao ouvinte de origem por meio da regra de roteamento.

    • Quando você usa uma regra de roteamento básica, a configuração de reconfiguração de cabeçalho é associada a um ouvinte de origem e é uma regravação de cabeçalho global.
    • Quando você usa uma regra de roteamento baseada em caminho, a configuração de reconfiguração de cabeçalho é definida no mapa de caminho de URL. Nesse caso, aplica-se apenas à área de caminho específica de um site.

Você pode criar vários conjuntos de regravação de cabeçalho HTTP e aplicar cada conjunto de regravação a vários ouvintes. Mas você pode aplicar apenas um conjunto de regravações a um ouvinte específico.

Iniciar sessão no Azure

Inicie sessão no portal do Azure com a sua conta do Azure.

Configurar uma reconfiguração de cabeçalho

Neste exemplo, modificamos uma URL de redirecionamento reescrevendo o cabeçalho de local na resposta HTTP enviada por um aplicativo de back-end.

  1. Selecione Todos os recursos e, em seguida, selecione seu gateway de aplicativo.

  2. No painel de serviço, selecione Regravações.

  3. Selecione Reescrever conjunto.

    Captura de tela que mostra a adição de um conjunto de reescritas.

  4. Forneça um nome para o conjunto de reescrita e associe-o a uma regra de roteamento:

    1. Na caixa Nome, digite o nome do conjunto de reescritas.
    2. Na lista Regras de roteamento associadas, selecione uma ou mais regras. Selecione apenas regras ainda não associadas a outros conjuntos de reescrita. As regras já associadas a outros conjuntos de reescrita estão esmaecidas.
    3. Selecione Seguinte.

    Captura de tela que mostra a adição de um nome e associação.

  5. Crie uma regra de reescrita:

    1. Selecione Adicionar regra de reescrita.

      Captura de tela que mostra a adição de uma regra de reescrita.

    2. Na caixa Reescrever nome da regra, insira um nome para a regra de reescrita. Na caixa Sequência de regras, insira um número.

      Captura de tela que mostra a adição de um nome de regra de reescrita.

  6. Neste exemplo, reescrevemos o cabeçalho do local somente quando ele contém uma referência a azurewebsites.net. Para fazer esta etapa, adicione uma condição para avaliar se o cabeçalho do local na resposta contém azurewebsites.net:

    1. Selecione Adicionar condição e, em seguida, selecione a caixa que contém as instruções If para expandi-la.

      Captura de tela que mostra a adição de uma condição.

    2. Na lista Tipo de variável a ser verificada, selecione Cabeçalho HTTP.

    3. Na lista Tipo de cabeçalho, selecione Resposta.

    4. Em Nome do cabeçalho, selecione Cabeçalho comum. Neste exemplo, estamos avaliando o cabeçalho de local, que é um cabeçalho comum.

    5. Na lista Cabeçalho comum, selecione Local.

    6. Em Diferencia maiúsculas de minúsculas, selecione Não.

    7. Na lista Operador, selecione igual (=).

    8. Insira um padrão de expressão regular. Neste exemplo, usamos o padrão (https?):\/\/.*azurewebsites.net(.*)$.

    9. Selecione OK.

    Captura de tela que mostra a configuração de uma condição If.

  7. Adicione uma ação para reescrever o cabeçalho do local:

    1. Na lista Tipo de ação , selecione Definir.
    2. Na lista Tipo de cabeçalho, selecione Resposta.
    3. Em Nome do cabeçalho, selecione Cabeçalho comum.
    4. Na lista Cabeçalho comum, selecione Local.
    5. Insira o valor do cabeçalho. Neste exemplo, usamos {http_resp_Location_1}://contoso.com{http_resp_Location_2} como o valor do cabeçalho. Esse valor substitui azurewebsites.net por contoso.com no cabeçalho do local.
    6. Selecione OK.

    Captura de tela que mostra a adição de uma ação.

  8. Selecione Criar para criar o conjunto de reescritas.

    Captura de tela que mostra a seleção Criar.

  9. O painel Regravações é aberto. Verifique se o conjunto de reescrita criado está na lista de conjuntos de reescrita.

    Captura de ecrã que mostra a reescrita de uma vista definida.

Para saber mais sobre como configurar alguns casos de uso comuns, consulte Cenários comuns de reconfiguração de cabeçalho.