Reescrever o 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 do SKU do Gateway de Aplicativo v2 para reescrever o URL.

Observação

O recurso de reescrita de URL está disponível somente para o SKU Standard_v2 e o WAF_v2 do Gateway de Aplicativo. Quando a reescrita de URL é configurada em um gateway habilitado para WAF, a avaliação de WAF ocorrerá nos cabeçalhos de solicitação e no URL regenerados. Saiba mais.

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

Antes de começar

Você precisa ter uma instância de SKU do Gateway de Aplicativo v2 para concluir as etapas neste artigo. Não é possível reescrever o URL no SKU v1. Se você não tiver o SKU v2, crie uma instância da SKU v2 do Gateway de Aplicativo antes de começar.

Entrar no Azure

Entre no portal do Azure com sua conta do Azure.

Configurar regeneração de URL

No exemplo abaixo sempre que o URL de solicitação contiver /article, o caminho de URL e a cadeia de caracteres de consulta de URL serão regravados

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. Selecione Reescritas no painel esquerdo.

  3. Selecione Conjunto de reescrita:

    Add rewrite set

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

    a. Insira o nome para o conjunto de reescrita na caixa Nome.

    b. Escolha uma ou mais das regras relacionadas na lista Regras de roteamento associadas. Elas são usadas para associar a configuração de reescrita ao ouvinte de origem por meio da regra de roteamento. Você pode selecionar apenas as regras de roteamento que não foram associadas a outros conjuntos de reescrita. As regras já associadas a outros conjuntos de regravação estão esmaecidas.

    c. Selecione Avançar.

    Associate to a rule

  5. Criar uma regra de reescrita:

    a. Selecione Adicionar regra de reescrita.

    Screenshot that highlights Add rewrite rule.

    b. Digite um nome para a regra de reescrita na caixa Nome da regra de reescrita. Insira um número na caixa Sequência de regras.

  6. Neste exemplo, reescreveremos o caminho da URL e a cadeia de caracteres de consulta de URL somente quando o caminho contiver /article. Para isso, adicione uma condição para avaliar se o caminho da URL contém /article

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

    b. Como neste exemplo queremos verificar o padrão /article no caminho da URL, na lista Tipo de variável a ser verificada, selecione Variável de servidor.

    c. Na lista Variável de servidor, escolha uri_path

    d. Em Diferenciar maiúsculas de minúsculas, selecione Não.

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

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

    ( ) é usado para capturar a substring de caracteres para uso posterior na composição da expressão para reescrever o caminho da URL. Para mais informações, consulte aqui.

    g. Selecione OK.

    Condition

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

    a. Na lista Tipo de reescrita, selecione URL.

    b. Na lista Tipo de ação, selecione Conjunto.

    c. Em Componentes, selecione O caminho do URL e a cadeia de caracteres de consulta do URL

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

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

    {var_uri_path_1} e {var_uri_path_2} são usados para buscar as substrings capturadas ao avaliar a condição nessa expressão .*article/(.*)/(.*)

    f. Selecione OK.

    Action

  8. Clique em Criar para criar o conjunto de reescrita.

  9. Verifique se o novo conjunto de reescrita aparece na lista de conjuntos de reescrita

    Add rewrite rule

Verificar a reescrita de URL pelos logs de acesso

Observe os campos abaixo nos logs de acesso para verificar se a reescrita de URL ocorreu de acordo com sua expectativa.

  • originalRequestUriWithArgs: esse campo contém o URL de solicitação original
  • requestUri: esse campo contém o URL após a operação de regeneração no Gateway de Aplicativo

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

Próximas etapas

Para saber mais sobre como configurar reescrita para alguns casos de uso comuns, confira cenários de reescrita comuns.