Todos os produtos
Search
Central de documentação

CDN:Reescrita de URL de Acesso

Última atualização: Jun 23, 2026

Se o caminho de um recurso no servidor de origem mudar, o caminho do recurso no nó do CDN também mudará. Se um usuário solicitar a URL original, o nó do CDN reescreve a URL da solicitação para o caminho de destino, reduzindo as requisições à origem e melhorando o desempenho de acesso do cliente.

Contexto

O código de status HTTP 302 Found indica que um recurso foi temporariamente movido. Após configurar a Reescrita de URL de Acesso, o POP do CDN coloca a nova URL no cabeçalho HTTP Location. Quando o cliente recebe a resposta 302, ele envia uma nova solicitação para esta URL.

Por padrão, os POPs do CDN enviam um código de status 302 após uma regra de Reescrita de URL de Acesso ser configurada. Os códigos de status 303 e 307 também são suportados. Para alterar o código de status, você pode enviar um ticket.

Código

Descrição

Comportamento

Caso de uso típico

302

Found

O método GET permanece inalterado. Outros métodos podem ser alterados para GET.

Use quando uma página estiver temporariamente indisponível por motivos imprevistos. Isso impede que os mecanismos de busca atualizem seus links.

303

See Other

O método GET permanece inalterado. Outros métodos são alterados para GET e o corpo da mensagem é perdido.

Use para redirecionar uma página após a conclusão de uma solicitação PUT ou POST. Isso impede operações repetidas se a página for atualizada.

307

Temporary Redirect

O método e o corpo da mensagem permanecem inalterados.

Use quando uma página estiver temporariamente indisponível por motivos imprevistos. Isso impede que os mecanismos de busca atualizem seus links. Este código de status é preferível ao 302 quando o site suporta links ou operações que usam métodos diferentes de GET.

null

Você pode configurar até 50 regras de reescrita para um nome de domínio de aceleração. Várias regras são processadas na ordem em que estão listadas no console do CDN, de cima para baixo.

Reescrita de URL de Acesso versus Reescrita de Caminho de Origem

Funcionalidade

Destino

Experiência do cliente

Caso de uso

Reescrita de URL de Acesso

Afeta tanto a URL voltada para o cliente quanto a URL usada para requisições à origem.

  • Quando a Regra de Execução é redirect, o cliente usará a URL redirecionada para reiniciar a solicitação de acesso.

  • Quando a Regra de Execução é break, a URL que o cliente vê é a mesma que a URL realmente acessada e permanece inalterada.

Comumente usado para migrar ou mapear URLs de um domínio antigo para um novo, ou para fornecer URLs diferentes para clientes móveis e desktop.

Exemplo: Quando um cliente acessa old.example.com/hello, a URL de acesso é reescrita para new.example.com/hello.

Reescrita de Caminho de Origem

Afeta apenas a URL que o POP usa para requisições à origem. A URL voltada para o cliente permanece inalterada.

A URL voltada para o cliente não muda.

Comumente usado para ocultar a estrutura real de URLs do servidor de origem, ou para mapear URLs para que os POPs possam buscar conteúdo de diferentes diretórios de origem.

Exemplo: Quando um cliente acessa cdn.example.com/hello, a URL de requisição à origem é reescrita para origin.example.com/source/hello.

Reescrita de URL de Acesso — diagrama

image
  1. Um cliente envia uma solicitação ao CDN para a URL old.example.com/hello.

  2. O CDN recebe a solicitação. Com base na regra de Reescrita de URL de Acesso, o POP retorna uma resposta 302 ao cliente e coloca a nova URL new.example.com/hello no cabeçalho HTTP Location.

  3. Após receber a resposta 302, o cliente envia uma nova solicitação para a nova URL.

  4. O POP verifica seu cache. Se o conteúdo reescrito estiver em cache, o POP o retorna diretamente ao cliente. Caso contrário, o POP envia uma requisição à origem para o servidor de origem com a URL reescrita new.example.com/hello.

  5. O servidor de origem recebe a solicitação e retorna a resposta ao POP.

  6. O POP armazena a resposta em cache e a retorna ao cliente.

Reescrita de Caminho de Origem — diagrama

image
  1. Um cliente envia uma solicitação ao CDN para a URL cdn.example.com/files/hello.txt.

  2. O POP recebe a solicitação e verifica seu cache. Se o conteúdo solicitado estiver em cache, o POP o retorna diretamente ao cliente. Caso contrário, com base na regra de Reescrita de Caminho de Origem, o POP reescreve a URL de requisição à origem para origin.example.com/secret/files/hello.txt e envia uma solicitação ao servidor de origem.

  3. O servidor de origem recebe a solicitação e retorna a resposta ao POP.

  4. O POP armazena a resposta em cache e a retorna ao cliente.

Procedimento

  1. Faça login no console do CDN.

  2. No painel de navegação à esquerda, clique em Nomes de Domínio.

  3. Na página Nomes de Domínio, encontre o nome de domínio desejado e clique em Gerenciar na coluna Ações.

  4. No painel de navegação do domínio, clique em Cache.

  5. Clique na aba Reescrita de URL de Acesso.

  6. Clique em Criar e configure os parâmetros para a Reescrita de URL de Acesso de acordo com os requisitos do seu negócio.

    imagem

    Parâmetro

    Descrição

    Caminho a Ser Reescrito

    O caminho deve começar com / e não pode conter protocolo ou nome de domínio. Expressões regulares PCRE são suportadas. Exemplo: ^/hello$.

    O conteúdo após o símbolo # em uma URL é o identificador de fragmento, que não é enviado ao servidor pelo navegador. Portanto, as regras de reescrita do CDN não podem corresponder ao caminho que segue o símbolo #. Para configurar um redirecionamento para uma URL que contém um fragmento #, você deve corresponder precisamente o caminho antes do símbolo # e configurar uma regra de reescrita separada para cada endereço de destino.

    Caminho de Destino

    • Quando a Regra de Execução é definida como Break, o caminho deve começar com / e não conter cabeçalho de protocolo ou nome de domínio.

    • Se a Regra de Execução for definida como Redirect, você pode incluir o protocolo e o nome de domínio. Expressões regulares PCRE são suportadas. Por exemplo, $1 e $2 são comumente usados para capturar strings dentro de parênteses no caminho a ser reescrito.

    Flag

    • Por padrão, as regras Redirect e Break são suportadas.

      • Redirect: Se uma URL de solicitação corresponder a uma regra, a solicitação será redirecionada para a URL de destino com um código de status 302. O cabeçalho Location retornado pelo POP do ao cliente contém a URL de destino. A query string da URL original não é modificada. Após a execução da regra atual, o processamento de regras continua com as regras subsequentes.

      • Break: Se uma URL de solicitação corresponder a uma regra, a solicitação será reescrita para a URL de destino. A query string da URL original não é modificada. Após a execução da regra atual, o processamento de regras é interrompido e as regras subsequentes não são correspondidas.

    • As regras None, enhance-break e enhance_redirect também são suportadas. Para usar essas regras, você deve enviar um ticket para que sejam configuradas no backend.

      • None: Quando uma solicitação corresponde a uma regra, o processamento continua para a próxima regra.

      • enhance_break: Semelhante ao Break, mas reescreve a URL inteira, incluindo a query string.

      • enhance_redirect: Semelhante ao Redirect, mas reescreve a URL inteira, incluindo a query string.

    null

    Diferentes regras de execução usam diferentes métodos de reescrita e diferem no suporte a outros domínios e protocolos:

    • None, Break e enhance_break reescrevem diretamente a URL de solicitação do cliente. Eles não suportam reescrita para outros domínios ou protocolos, como de HTTP para HTTPS.

    • Redirect e enhance_redirect usam um redirecionamento 302 para reescrever a URL. Eles suportam reescrita para outros domínios e protocolos:

      • O endereço 302 Location pode estar em um domínio diferente, não apenas no nome de domínio de aceleração atual. Por exemplo, uma URL no domínio example.com pode ser reescrita para uma URL no novo domínio aliyundoc.com.

      • O endereço 302 Location também pode especificar um protocolo diferente. Por exemplo, você pode reescrever uma URL de HTTP para HTTPS.

    Condição da Regra

    Uma condição de regra permite que uma regra seja aplicada somente quando uma solicitação atende a critérios específicos.

    null

    Quando uma funcionalidade faz referência a condições de regra, a ordem de execução segue a prioridade das condições de regra associadas, não a ordem das configurações da funcionalidade.

    • Não usar: Desabilita regras condicionais.

    • Você pode adicionar ou editar regras condicionais no Motor de regras.

    Var Nginx

    Esta opção está desmarcada por padrão. Se você selecionar esta opção, poderá usar variáveis Nginx integradas na URL de destino. A seguir, um exemplo de configuração:

    • Caminho a ser reescrito: ^/test.jpg$

    • Caminho de destino: /test.${arg_type}

    • Com esta opção habilitada, variáveis como ${nginx_var} são avaliadas. Por exemplo, ${arg_type} é substituído pelo valor do parâmetro type da URL de solicitação original.

    null

    Para usar este parâmetro, você deve enviar um ticket para que seja configurado no backend.

  7. Clique em OK para salvar a configuração.

    Após criar uma regra com sucesso, você pode encontrá-la na lista de regras e clicar em Modificar ou Excluir para gerenciá-la.

Exemplos de configuração

Exemplo 1

Quando um cliente solicita http://example.aliyundoc.com/hello, a solicitação contém /hello. O POP do CDN retorna uma resposta 302 ao cliente que inclui a nova URL http://example.aliyundoc.com/index.html no cabeçalho Location. O cliente então envia uma solicitação para http://example.aliyundoc.com/index.html.

Expressão regular

null

Se o cabeçalho Location de um redirecionamento 302 omitir o protocolo e o nome de domínio, o cliente usa os da solicitação original.

Exemplo 2

Quando um cliente solicita http://example.aliyundoc.com/hello, a solicitação contém /hello, que corresponde à expressão regular ^/hello$. O POP do CDN envia um código de status 302 ao cliente e define o cabeçalho Location como a URL de destino https://test.aliyundoc.com/index.html. Após o cliente receber a resposta, ele envia uma solicitação para https://test.aliyundoc.com/index.html.

imagem

Exemplo 3

Quando um cliente solicita http://www.example.com/cdn/url/http://image.example.com/image/cat.jpg, a solicitação contém /cdn/url/http:// e corresponde à expressão regular ^/cdn/url/http://(.*). O POP do CDN responde com um código de status 302 e escreve a URL de destino http://image.example.com/image/cat.jpg no cabeçalho Location. Após receber a resposta, o cliente envia uma solicitação para http://image.example.com/image/cat.jpg.

imagem

Exemplo 4

Quando um cliente solicita http://example.aliyundoc.com/stories/index.html#/voice/318, o #/voice/318 na URL é um identificador de fragmento. O navegador não envia essa parte ao servidor. O caminho de solicitação real que o nó do CDN recebe é apenas /stories/index.html. Portanto, ao configurar uma regra de reescrita, defina Caminho a Ser Reescrito como ^/stories/index\.html$ para corresponder precisamente à parte do caminho antes do #, defina Caminho de Destino como a URL de destino e defina Regra de Execução como Redirect.

Se várias URLs antigas com diferentes fragmentos # precisarem ser redirecionadas para endereços de destino diferentes, você deve configurar uma regra de reescrita separada para cada caminho de origem diferente, pois o servidor não consegue distinguir o conteúdo diferente que segue o símbolo #.