Partilhar via


Reescrever uma URL com o Gateway de Aplicativo do Azure - Portal do Azure

Este artigo descreve como usar o portal do Azure para configurar uma instância de SKU do Azure Application Gateway v2 para reescrever uma URL.

Nota

O recurso Regravação de URL está disponível apenas para o Standard_v2 e o Aplicativo Web Firewall_v2 SKU do Application Gateway. Quando a Reconfiguração de URL é configurada em um gateway habilitado para Firewall de Aplicativo Web, a avaliação do Firewall de Aplicativo Web ocorre nos cabeçalhos de solicitação reescritos e na URL. Para obter mais informações, consulte Usar reconfiguração de URL ou reconfiguração de cabeçalho de host com o Web Application Firewall (WAF_v2 SKU).

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 uma URL 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.

Iniciar sessão no Azure

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

Configurar uma reconfiguração de URL

No exemplo a seguir, sempre que a URL da solicitação contiver /article, o caminho da URL e a cadeia de caracteres de consulta da URL serão reescritos. Por exemplo:

contoso.com/article/123/fabrikam ->contoso.com/article.aspx?id=123&title=fabrikam

  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. Insira um nome para o conjunto de regravações 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 das regras. Esta etapa associa a configuração de regravação ao ouvinte de origem por meio da regra de roteamento. Selecione apenas as regras de roteamento ainda não associadas a outros conjuntos de regravação. As regras já associadas a outros conjuntos de reescrita estão esmaecidas.

    3. Selecione Seguinte.

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

  5. Crie uma regra de reescrita:

    1. Selecione Adicionar regra de reescrita.

      Captura de tela que mostra Adicionar regra de reescrita.

    2. Na caixa Reescrever nome da regra, insira um nome para a regra de reescrita.

    3. Na caixa Sequência de regras, insira um número.

  6. Neste exemplo, reescrevemos um caminho de URL e uma cadeia de caracteres de consulta de URL somente quando o caminho contém /article. Para executar esta etapa, adicione uma condição para avaliar se o caminho da URL contém /article:

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

    2. Na lista Tipo de variável a ser verificada, selecione Variável de servidor. Neste exemplo, queremos verificar o padrão /article no caminho da URL.

    3. Na lista Variável de servidor, selecione uri_path.

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

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

    6. Insira um padrão de expressão regular. Neste exemplo, usamos o padrão .*article/(.*)/(.*)

      Parênteses ( ) são usados para capturar a substring para uso posterior na composição da expressão para reescrever o caminho da URL. Para obter mais informações, consulte Correspondência e captura de padrões.

    7. Selecione OK.

    Captura de tela que mostra a condição.

  7. Adicione uma ação para reescrever o URL e o caminho do URL:

    1. Na lista Tipo de reescrita, selecione URL.

    2. Na lista Tipo de ação , selecione Definir.

    3. Em Componentes, selecione Caminho da URL e Cadeia de caracteres de consulta da URL.

    4. No valor do caminho da URL, insira o novo valor do caminho. Neste exemplo, usamos /article.aspx.

    5. No valor da cadeia de caracteres de consulta de URL, insira o novo valor da cadeia de caracteres de consulta de URL. Neste exemplo, usamos id={var_uri_path_1}&title={var_uri_path_2}.

      Os {var_uri_path_1} caminhos e {var_uri_path_2} são usados para buscar as substrings capturadas durante a avaliação da condição na expressão .*article/(.*)/(.*)

    6. Selecione OK.

    Captura de tela que mostra a ação.

  8. Selecione Criar para criar o conjunto de reescritas.

  9. Verifique se o novo conjunto de regravações aparece na lista de conjuntos de regravações.

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

Verificar a regravação de URL por meio de logs de acesso

Observe os seguintes campos nos logs de acesso para verificar se a regravação de URL aconteceu de acordo com suas expectativas:

  • originalRequestUriWithArgs: Este campo contém o URL do pedido original.
  • requestUri: Este campo contém a URL após a operação de regravação no Application Gateway.

Para obter mais informações sobre todos os campos nos logs de acesso, consulte Log de acesso.

Para saber mais sobre como configurar regravações para alguns casos de uso comuns, consulte Cenários comuns de reescrita.