Reconfiguração de URL

O Azure Front Door tem suporte para reescrita de URL para alterar o caminho da solicitação que está sendo roteado para sua origem. A reescrita de URL permite que você defina as condições para garantir que a URL ou os cabeçalhos especificados sejam reescritos somente quando determinadas condições forem atendidas. Essas condições se baseiam nas informações de solicitação e resposta.

Com esse recurso, você pode redirecionar seus usuários finais para uma origem diferente com base nos seus tipos de dispositivos ou no tipo de arquivo solicitado. A ação de reescrita de URL pode ser encontrada em uma configuração do conjunto de regras.

Captura de tela da ação de reescrita de URL em uma configuração do conjunto de regras.

Padrão de origem

O padrão de origem é o caminho da URL na solicitação inicial que você quer substituir. Atualmente, o padrão de origem usa uma correspondência baseada em prefixo. Para corresponder a todos os caminhos de URL, você pode definir uma barra (/) como o valor do padrão de origem.

Para o padrão de origem em uma ação de reescrita de URL, somente o caminho após os padrões de correspondência na configuração da rota é considerado. Por exemplo, você tem o seguinte formato de URL de entrada contoso.com/pattern-to-match/source-pattern, somente /source-pattern é considerado pelo conjunto de regras como o padrão de origem a ser reescrito. O formato do URL de saída após a aplicação da reescrita de URL é contoso.com/pattern-to-match/destination.

Para a situação, quando você precisar remover o segmento /pattern-to-match da URL, defina o caminho de origem para o grupo de origem na configuração da rota como /.

Destino

O caminho de destino utilizado para substituir o padrão de origem. Por exemplo, se o caminho da URL de solicitação for contoso.com/foo/1.jpg, o padrão de origem for /foo/ e o destino for /bar/, o conteúdo será veiculado a partir de contoso.com/bar/1.jpg da origem.

Preservar o caminho sem correspondência

Preservar o caminho sem correspondência permite acrescentar o caminho restante após o padrão de origem ao novo caminho. Quando preservar o caminho sem correspondência é definido como Não (padrão), o caminho restante após o padrão de origem é removido.

Preservar caminho sem correspondência Padrão de origem Destino Solicitação de entrada Conteúdo servido a partir da origem
Sim / /foo/ contoso.com/sub/1.jpg /foo/sub/1.jpg
Sim /sub/ /foo/ contoso.com/sub/image/1.jpg /foo/image/1.jpg
Não /sub/ /foo/2.jpg contoso.com/sub/image/1.jpg /foo/2.jpg

Importante

O Azure Front Door (clássico) será desativado em 31 de março de 2027. Para evitar qualquer interrupção do serviço, é importante que você migre seus perfis do Azure Front Door (clássico) para a camada Standard ou Premium do Azure Front Door até março de 2027. Para obter mais informações, consulte Desativação do Azure Front Door (clássico).

O Azure Front Door (clássico) tem suporte à reescrita de URL configurando um caminho de encaminhamento personalizado ao configurar a regra de tipo de roteamento de encaminhamento. Por padrão, se somente uma barra (/*) for definida, o Front Door copiará o caminho da URL de entrada para a URL utilizada na solicitação encaminhada. O cabeçalho do host utilizado na solicitação encaminhada é o configurado para o back-end selecionado. Para obter mais informações, consulte Cabeçalho de host de back-end.

A parte robusta da reescrita da URL é que o caminho de encaminhamento personalizado copia qualquer parte do caminho de entrada que corresponda ao caminho curinga para o caminho encaminhado.

A tabela a seguir mostra um exemplo de uma solicitação de entrada e o caminho encaminhado correspondente ao usar um caminho de encaminhamento personalizado de /fwd/ para um caminho de correspondência com um curinga. A parte a/b/c do caminho representa a porção que substitui o caractere curinga.

Caminho da URL de entrada Caminho da correspondência Caminho de encaminhamento personalizado Caminho encaminhado
/foo/a/b/c /foo/* /fwd/ /fwd/a/b/c

Exemplo de regeneração de URL

Considere uma regra de roteamento com a seguinte combinação de hosts de front-end e caminhos configurados:

Hosts Caminhos
www.contoso.com /*
/foo
/foo/*
/foo/bar/*

A primeira coluna na tabela a seguir mostra exemplos de solicitações recebidas e a segunda coluna mostra qual seria a rota correspondente mais específica definida. As próximas três colunas da tabela são exemplos de Caminhos de encaminhamento personalizados.

Por exemplo, a segunda linha diz que, para uma solicitação de entrada de www.contoso.com/sub, se o caminho do encaminhamento personalizado for /, o caminho encaminhado seria /sub. Se o caminho de encaminhamento personalizado era /fwd/, então o caminho encaminhado é /fwd/sub. As partes enfatizadas dos caminhos representam as partes que fazem parte da correspondência do caractere curinga.

Solicitação de entrada Caminho de correspondência mais específica / /fwd/ /foo/ /foo/bar/
www.contoso.com/ /* / /fwd/ /foo/ /foo/bar/
www.contoso.com/sub /* /sub /fwd/sub /foo/sub /foo/bar/sub
www.contoso.com/a/b/c /* /a/b/c /fwd/a/b/c /foo/a/b/c /foo/bar/a/b/c
www.contoso.com/foo /foo / /fwd/ /foo/ /foo/bar/
www.contoso.com/foo/ /foo/* / /fwd/ /foo/ /foo/bar/
www.contoso.com/foo/bar /foo/* /bar /fwd/bar /foo/bar /foo/bar/bar

Observação

O Azure Front Door (clássico) só tem suporte à reescrita de URL de um caminho estático para outro caminho estático. A preservação de um caminho sem correspondência é suportada pelo Azure Front Door Standard e Premium. Para obter mais informações, confira Preservar o caminho sem correspondência.

Configurações opcionais

Há configurações opcionais extras que você também pode especificar para qualquer configuração de regra de roteamento:

  • Configuração do cache: se estiver desabilitado ou não especificado, as solicitações que correspondem a essa regra de roteamento não tentarão usar conteúdo em cache e, em vez disso, sempre buscarão no back-end. Para obter mais informações, confira armazenamento em cache com o Azure Front Door.

Próximas etapas