Como posso redirecionar um domínio para outro no Route 53?

Data da última atualização: 27-05-2021

Preciso redirecionar meu cliente de um domínio para outro no Amazon Route 53. Como posso fazer isso?

Breve descrição

Existem três cenários comuns para configurar o redirecionamento de domínio:

1.    Redirecionar de um domínio para outro domínio. Por exemplo:
        Domínio apex (example.com) para domínio apex (anydomain.com)
        Domínio apex (example.com) para subdomínio (www.anydomain.com), incluindo www.example.com
        Subdomínio (www.example.com) para domínio apex (anydomain.com), incluindo example.com
        Subdomínio (www.example.com) para subdomínio (www.anydomain.com), incluindo anysubdomain.example.com
2.    Redirecionar um domínio de HTTP para HTTPS. Por exemplo:
        Domínio apex (http://example.com) para domínio apex (https://anydomain.com), incluindo https://example.com
        Domínio apex (http://example.com) para subdomínio (https://www.anydomain.com), incluindo https://www.example.com
        Subdomínio (http://www.example.com) para domínio apex (https://anydomain.com), incluindo https://example.com
        Subdomínio (http://www.example.com) para subdomínio (https://www.anydomain.com), incluindo https://anysubdomain.example.com
3.    Redirecionar para um caminho URI diferente (encaminhamento de caminho). Por exemplo:
        example.com, example.com/<path>, www.example.com ou www.example.com/<path> para
        example.com/<newpath>, www.example.com/<newpath>, anydomain.com/<newpath> ou anysubdomain.anydomain.com/<newpath>

Resolução

Redirecionar de um domínio para outro domínio usando um registro CNAME

Nesse cenário, crie um registro CNAME na sua zona hospedada do Route 53 para configurar o redirecionamento de DNS.

Para o redirecionamento de um domínio não apex para outro tipo de domínio, configure o registro de CNAME usando um dos formatos a seguir (conforme for adequado para seu caso de uso):

  • www.example.com CNAME anysubdomain.example.com ou www.anydomain.com
  • www.example.com CNAME example.com ou anydomain.com

Redirecionar para um caminho de URI diferente ou de HTTP para HTTPS usando o Amazon S3 e o CloudFront

Esses dois cenários comuns de redirecionamento não podem ser obtidos por meio do redirecionamento simples de DNS com registros CNAME. Nesses cenários, é preciso configurar o redirecionamento no lado da aplicação. É possível usar o Amazon CloudFront, hospedagem de site estático no Amazon Simple Storage Service (Amazon S3) e o Route 53 para redirecionar solicitações.
Observação: a hospedagem de site estático no Amazon S3 só é compatível com o protocolo HTTP. É preciso usar uma distribuição do CloudFront para realizar o redirecionamento de HTTP para HTTPS.

Pré-requisitos

Para redirecionar o domínio nesse cenário, você precisa de:

  • Uma zona hospedada para o domínio (example.com) hospedada no Route 53
  • Permissões para adicionar registros do recurso à zona hospedada para o domínio (example.com)
  • Permissões para criar um bucket do Amazon S3
  • Permissões para criar distribuições do CloudFront
  • Certificados do AWS Certificate Manager (ACM) para seus nomes de domínio (example.com e www.example.com)

Configuração do Amazon S3

  1. Abra o console do Amazon S3.
  2. Crie um bucket do S3 com um nome global exclusivo.
  3. Selecione o bucket que você acabou de criar e, em seguida, escolha Properties (Propriedades).
  4. Em Static website hosting (Hospedagem de site estático), escolha Edit (Editar).
  5. Em Hosting type (Tipo de hospedagem), escolha Redirect requests for an object (Redirecionar solicitações para um objeto).
  6. Insira o Host name (Nome do host) (o novo local redirecionado domain.com ou domain.com/xxx/xxx) e, em seguida, escolha o protocolo do novo domínio.
  7. Escolha Save (Salvar).
  8. Anote o endpoint do bucket (example.com.s3-website-us-east-1.amazonaws.com). Você usará esse dado para configurar o nome do domínio de origem para o CloudFront na tarefa a seguir.

Configuração do CloudFront

  1. Abra o console do CloudFront.
  2. Escolha Create Distribution (Criar distribuição).
  3. Em Web, escolha Get Started (Conceitos básicos).
  4. Em Origin Domain Name (Nome do domínio de origem), insira o endpoint do site do bucket do S3 que você anotou na tarefa anterior.
  5. Em Viewer Protocol Policy (Política de protocolo de visualizador), escolha Redirect HTTP to HTTPS (Redirecionar HTTP para HTTPS).
  6. Configure as definições do CloudFront remanescentes segundo suas necessidades.
  7. Se você não estiver usando um domínio personalizado com o CloudFront, escolha Create Distribution (Criar distribuição) para concluir o processo.
    Se você estiver usando um domínio personalizado, conclua estas etapas adicionais antes de criar a distribuição:
    Em Alternate Domain Names (CNAMEs) (Alternar nomes de domínio [CNAMEs]), insira seu domínio personalizado (example.com).
    Em SSL Certificate (Certificado SSL), escolha Custom SSL Certificate (Certificado SSL personalizado). Em seguida, escolha o certificado SSL personalizado que será atribuído à distribuição.
    Observação: para obter mais informações sobre a instalação de um certificado, consulte Como configuro minha distribuição do CloudFront para usar um certificado SSL/TLS?
    Escolha Create Distribution (Criar distribuição).

Configuração do Route 53

  1. Abra o console do Route 53.
  2. Selecione a zona hospedada (example.com).
  3. Crie um registro do recurso para example.com:
    Em Record Type (Tipo de registro), escolha A – IPv4 address (Endereço A – IPv4).
    Em Alias, escolha Yes (Sim).
    Em Alias Target (Destino do alias), selecione o campo com valor em branco. Na lista suspensa, selecione o nome de domínio da distribuição do CloudFront criada na tarefa anterior.
  4. Configure as definições remanescentes segundo suas necessidades e, em seguida, escolha Create (Criar).

Redirecionar nomes de domínio ou redirecionar de HTTP para HTTPS usando um balanceador de carga da aplicação

O serviço de balanceador de carga da aplicação oferece suporte ao redirecionamento de nomes de domínio e redirecionamento de HTTP para HTTPS. Se você tiver um domínio que aponte para um balanceador de carga da aplicação, é uma prática recomendada configurar o redirecionamento usando o balanceador de carga da aplicação em vez do Amazon S3.

Se estiver sendo usado um balanceador de carga da aplicação como parte da configuração, o serviço poderá ser usado para redirecionar um domínio para outro com o cumprimento das etapas a seguir.

Configurar o balanceador de carga da aplicação

  1. Abra o console do Amazon Elastic Compute Cloud (Amazon EC2).
  2. No painel de navegação, escolha Load Balancers (Balanceadores de carga) em Load Balancing (Balanceamento de carga).
  3. Selecione o balanceador de carga e, em seguida, escolha Listeners.
  4. Escolha View/edit rules (Ver/editar regras) para o listener do balanceador de carga que será usado.
  5. Escolha o ícone Add rule (Adicionar regra) (o sinal de mais).
  6. Escolha Insert Rule (Inserir regra).
  7. Escolha Add condition (Adicionar condição).
  8. Na seção conditions (IF) (condição (SE)), escolha Add condition (Adicionar condição).
  9. Escolha Host header (Cabeçalho de host) e, em seguida, insira seu nome de host (por exemplo, example.com).
  10. Para salvar, escolha o ícone checkmark.
  11. Na seção actions (THEN) (ações (EM SEGUIDA)), escolha Add action (Adicionar ação).
  12. Escolha Redirect to (Redirecionar para).
  13. Especifique o protocolo e a porta, conforme exigido pelo caso de uso.
  14. Mude Original host, path, query (Host original, caminho, consulta) para Custom host, path, query (Host personalizado, caminho, consulta).
  15. Em Host, insira example2.com.
  16. Em Path and Query (Caminho e consulta), mantenha os valores padrão (a menos que o caso de uso exija que você os altere).
  17. Defina a Response (Resposta) como HTTP 301 "Permanently moved" (HTTP 301 “Permanentemente movido”) ou HTTP 302 "Found" (HTTP 302 “Encontrado”).
  18. Para salvar, escolha o ícone checkmark.
    A seção THEN (EM SEGUIDA) é exibida:
    Redirecione para https://example2.com:443/#{path}?#{query}
    Código de status: HTTP_301
  19. Escolha Save (Salvar).

Observação: se ambos os domínios apontarem para o mesmo balanceador de carga da aplicação, você deverá:

  • Ter certificados separados para ambos os domínios
    -ou-
  • Usar um certificado Subject Alternative Name (SAN) para validar os domínios

Confirmar se o redirecionamento está funcionando conforme pretendido

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), certifique-se de estar usando a versão mais recente da AWS CLI.

1.    Na AWS CLI, use o comando curl utility.

Exemplo de comando:

curl -IL https://swapnil.live.

Exemplo de saída:

curl -IL https://swapnil.live  --> Initial Link
HTTP/2 301
server: awselb/2.0
date: Sat, 15 May 2021 09:00:14 GMT
content-type: text/html
content-length: 134
location: https://www.example.com:443/  --> New redirected link 

HTTP/2 200  --> 200 OK Response from backend
content-encoding: gzip
accept-ranges: bytes
age: 155230
cache-control: max-age=604800
content-type: text/html; charset=UTF-8
date: Sat, 15 May 2021 09:00:14 GMT
etag: "3147526947"
expires: Sat, 22 May 2021 09:00:14 GMT
last-modified: Thu, 17 Oct 2019 07:18:26 GMT
server: ECS (dcb/7EEF)
x-cache: HIT
content-length: 648

2.    No seu navegador, insira o domínio para o qual você está fazendo o redirecionamento e confirme se ele está fazendo o redirecionamento para o domínio de destino.

3.    (Opcional) Para obter mais detalhes, consulte o arquivo HTTP Archive (HAR). Um arquivo HAR é um arquivo JSON que contém a mais recente atividade de rede registrada por seu navegador.

Capture o arquivo HAR

Google Chrome:

  1. No navegador, escolha Customize and control Google Chrome (Personalizar e controlar o Google Chrome).
  2. Escolha More tools (Mais ferramentas), Developer tools (Ferramentas do desenvolvedor).
  3. Com o DevTools aberto no navegador, escolha o painel Network (Rede).
  4. Marque a caixa de seleção Preserve log (Preservar log).
  5. Escolha Clear (Limpar) para limpar todas as solicitações de rede atuais.
    Observação: ao ser recarregada a página, é possível observar o redirecionamento ocorrendo nas primeiras solicitações, dependendo do nível de redirecionamento configurado.
  6. No DevTools, abra o menu de contexto (clique com o botão direito do mouse) em qualquer solicitação da rede.
  7. Escolha Save all as HAR with content (Salvar tudo como HAR com conteúdo) e, em seguida, salve o arquivo.

Microsoft Edge (Chromium):

  1. No navegador, escolha Settings and more (Configurações e mais).
  2. Escolha More tools (Mais ferramentas), Developer tools (Ferramentas do desenvolvedor).
  3. Com o DevTools aberto no navegador, escolha o painel Network (Rede).
  4. Marque a caixa de seleção Preserve log (Preservar log).
  5. Escolha Clear (Limpar) para limpar todas as solicitações de rede atuais.
    Observação: ao ser recarregada a página, é possível observar o redirecionamento ocorrendo nas primeiras solicitações, dependendo do nível de redirecionamento configurado.
  6. No DevTools, abra o menu de contexto (clique com o botão direito do mouse) em qualquer solicitação da rede.
  7. Escolha Save all as HAR with content (Salvar tudo como HAR com conteúdo) e, em seguida, salve o arquivo.

Mozilla Firefox:

  1. No navegador, escolha Open menu (Abrir menu).
  2. Escolha Web Developer (Desenvolvedor da Web).
  3. No menu Web Developer (Desenvolvedor da Web), escolha Network (Rede).
    Observação: em algumas versões do Firefox, o menu Web Developer (Desenvolvedor da Web) é o menu Tools (Ferramentas).
  4. No Network Monitor (Monitor de rede), marque a caixa de seleção Persist Logs (Persistir logs).
  5. Escolha o ícone trash can (lixeira) para limpar todas as solicitações de rede atuais.
    Observação: ao ser recarregada a página, é possível observar o redirecionamento ocorrendo nas primeiras solicitações, dependendo do nível de redirecionamento configurado.
  6. No Network Monitor (Monitor de rede), abra o menu de contexto (clique com o botão direito do mouse) em qualquer solicitação de rede na lista de solicitações.
  7. Escolha Save all as HAR (Salvar tudo como HAR) e, em seguida, salve o arquivo.

Analise o arquivo HAR

  1. Abra o analisador de HAR de preferência, como o Analisador HAR do Google.
  2. Carregue o arquivo HAR que acabou de ser criado.
  3. Limpe as caixas de seleção para todos os códigos HTTP, exceto 3XX.
  4. Escolha qualquer uma das entradas listadas para obter detalhes sobre a solicitação de redirecionamento.

Este artigo ajudou?


Precisa de ajuda com faturamento ou suporte técnico?