O recurso de redirecionamento 301/302 aceita os códigos de status de resposta 301 e 302 do servidor de origem e os processa da mesma forma. Quando esse recurso está ativado, os pontos de presença (POPs) do CDNDCDN lidam diretamente com as respostas 301/302 do servidor de origem. Isso reduz a troca de dados e acelera a recuperação de recursos para os usuários.
Pré-requisitos
O servidor de origem utiliza o redirecionamento 301/302.
Você deve ter permissão para configurar o redirecionamento 301/302. Por padrão, essa funcionalidade não está disponível para usuários externos. Para solicitar permissões, envie um ticket.
Contexto
Os códigos 301 ou 302 são status HTTP que indicam a movimentação de um recurso, tornando-o inacessível no local solicitado. Para resolver isso, o servidor geralmente inclui um cabeçalho Location na resposta. Ao receber uma resposta 301/302 com esse cabeçalho, o cliente envia uma nova requisição ao endereço especificado para recuperar o recurso.
Como funciona
Se um POP redirecionar uma requisição ao servidor de origem e receber o código de status HTTP 301 ou 302, o próprio POP processará esse código. A requisição é redirecionada ao endereço especificado pelo cabeçalho Location retornado pelo servidor de origem para recuperar o recurso. Nesse caso, o código de status HTTP 301 ou 302 não retorna ao cliente.
Um cliente solicita o arquivo
http://example.com/examplefile.txt.Como o arquivo não está em cache no ponto de presença (POP) do CDNDCDN, o sistema envia uma requisição de retorno à origem.
O servidor de origem retorna um código de status 301/302, com o cabeçalho Location apontando para
http://www.example.org/examplefile.txt.Após receber a resposta do servidor de origem, o POP do CDNDCDN envia uma requisição ao endereço do Location
http://www.example.org/examplefile.txtpara obter o recurso.Depois que o ponto de presença (POP) do CDNDCDN obtém o recurso necessário, ele armazena o conteúdo em cache no POP do CDNDCDN.
O POP do CDNDCDN entrega os recursos recuperados ao usuário.
Caso outros usuários solicitem http://example.com/examplefile.txt, o POP servirá o arquivo diretamente.
Observações de uso
Antes de configurar o redirecionamento 301/302 para um nome de domínio, verifique se há um host de origem configurado para ele. Para mais informações, consulte Configure the default origin host.
Se não houver um host de origem configurado para o domínio: quando o servidor de origem retornar o código de status HTTP 301 ou 302 e o cabeçalho Location especificar uma URL ao POP, a requisição será redirecionada para a URL indicada pelo Location. O valor do cabeçalho Host na requisição corresponderá ao nome de domínio definido no cabeçalho Location.
Se houver um host de origem configurado para o domínio: quando o servidor de origem retornar o código de status HTTP 301 ou 302 e o cabeçalho Location especificar uma URL ao POP, o valor do cabeçalho Host na requisição será o mesmo configurado para o nome de domínio acelerado. Por padrão, esse valor é o próprio nome de domínio acelerado. Utilizar o nome de domínio especificado no cabeçalho Location como valor do cabeçalho Host na requisição de origem causará um erro. Caso precise que o Alibaba Cloud CDNDCDN aceite esse cenário, envie um ticket.
-
O cabeçalho Location retornado pelo servidor de origem pode ter os seguintes formatos:
Location:
http://www.example.net/index.html. O POP redireciona a requisição para a URL completa especificada no cabeçalho Location.Location:
//www.example.net/index.html. O POP redireciona a requisição para uma URL composta pelo protocolo da requisição original combinado com o valor do cabeçalho Location.Location:
/index.html. O POP redireciona a requisição para uma URL formada pelo protocolo e nome de domínio da requisição original, acrescidos do valor do cabeçalho Location.
Procedimento
Faça login no console do DCDN.
No painel de navegação à esquerda, clique em Domain Names.
Na página Domain Names, localize o nome de domínio desejado e clique em Configure.
Na árvore de navegação à esquerda do nome de domínio, clique em Origin Fetch.
Na aba Origin Fetch, localize 301/302 Redirection.
Ative a chave 301/302 Redirection.
-
Clique em Modify e configure os parâmetros conforme a tabela a seguir.
Parâmetro
Descrição
Maximum Number of Redirects
Especifique o número máximo de vezes que um POP pode redirecionar para a URL definida no cabeçalho Location a cada requisição. Se esse limite for ultrapassado, o código de status HTTP 301 ou 302 retornará ao usuário. Valores válidos: 1 a 5. Valor padrão: 2.
NotaO número máximo de redirecionamentos 301/302 determina quantas requisições de origem um POP pode redirecionar ao servidor de origem.
Número máximo de requisições de origem = Número máximo de redirecionamentos 301/302 + 1. Assim, o número máximo padrão de requisições de origem é 3. Valores válidos: 2 a 6.
Retention Request Parameters
Yes: mantém os parâmetros das requisições redirecionadas ao servidor de origem durante os redirecionamentos 301/302. Esses parâmetros são encaminhados ao servidor indicado no cabeçalho Location.
No: descarta os parâmetros das requisições redirecionadas ao servidor de origem durante os redirecionamentos 301/302.
Retain Request Headers
Yes: preserva os cabeçalhos das requisições redirecionadas ao servidor de origem durante os redirecionamentos 301/302. Os parâmetros de cabeçalho são enviados ao servidor definido no cabeçalho Location.
No: não preserva os cabeçalhos das requisições redirecionadas ao servidor de origem durante os redirecionamentos 301/302.
Clique em OK.