Partilhar via


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 solicitação e cabeçalho de solicitação que se 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 se tem várias regras de reescrita em um conjunto de regras de reescrita. 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 o utilizador aplica uma regra de roteamento básica, a configuração de regravação de cabeçalho está associada a um ouvinte de origem e constitui uma regravação de cabeçalho global.
    • Quando se usa uma regra de encaminhamento baseada em caminhos, a configuração de reescrita do cabeçalho é definida no mapa de caminho do 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

Entre no portal do Azure com sua conta do Azure.

Configurar uma reescrita 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 configurações.

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

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

    1. Na caixa Nome, introduza o nome do conjunto de regras de reescrita.
    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 Avançar.

    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 de localização:

    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. Este valor substitui azurewebsites.net por contoso.com no cabeçalho de localização.
    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 Reescritas abre. 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.