

# Usar URLs personalizados adicionando nomes de domínio alternativos (CNAMEs)
<a name="CNAMEs"></a>

Quando você cria uma distribuição, o CloudFront fornece um nome de domínio a ela, por exemplo, d111111abcdef8.cloudfront.net. Em vez de usar esse nome de domínio fornecido, é possível usar um nome de domínio alternativo (também conhecido como CNAME).

Saiba como usar seu próprio nome de domínio, como www.exemplo.com. Consulte os seguintes tópicos:

**Topics**
+ [Requisitos para o uso de nomes de domínio alternativos](#alternate-domain-names-requirements)
+ [Restrições de uso de nomes de domínio alternativos](#alternate-domain-names-restrictions)
+ [Adicionar um nome de domínio alternativo](CreatingCNAME.md)
+ [Mover um nome de domínio alternativo](alternate-domain-names-move.md)
+ [Remover um nome de domínio alternativo](alternate-domain-names-remove-domain.md)
+ [Usar curingas em nomes de domínio alternativos](alternate-domain-names-wildcard.md)

## Requisitos para o uso de nomes de domínio alternativos
<a name="alternate-domain-names-requirements"></a>

Ao adicionar um nome de domínio alternativo, como www.example.com, a uma distribuição do CloudFront, os requisitos são os seguintes:

**Os nomes de domínio alternativos devem estar em letras minúsculas**  
Todos os nomes de domínio alternativos (CNAMEs) devem estar em letras minúsculas.

**Os nomes de domínio alternativos devem ser cobertos por um certificado TLS válido**  
Para adicionar um nome de domínio alternativo (CNAME) a uma distribuição do CloudFront, é necessário anexar à distribuição um certificado TLS válido e confiável, que abranja o nome de domínio alternativo. Isso garante que somente as pessoas com acesso ao certificado do domínio possam associar ao CloudFront um CNAME relacionado ao seu domínio.  
Um certificado confiável é aquele que é emitido pelo AWS Certificate Manager (ACM) ou por outra autoridade de certificação (CA) válida. Você pode usar um certificado autoassinado para validar um CNAME existente, mas *não* para um CNAME novo. O CloudFront oferece suporte às mesmas autoridades de certificação que o Mozilla. Para ver a lista atual, consulte [Mozilla Included CA Certificate List](https://wiki.mozilla.org/CA/Included_Certificates). Para ter informações sobre certificados intermediários ao usar uma CA de terceiros, consulte [Certificados intermediários](cnames-and-https-requirements.md#https-requirements-intermediate-certificates).  
Para verificar um nome de domínio alternativo usando o certificado que você anexar, incluindo nomes de domínio alternativos que incluem curingas, o CloudFront verifica o nome de assunto alternativo (SAN, subject alternative name) no certificado. O nome de domínio alternativo que você estiver adicionando deverá ser coberto pelo SAN.  
É possível anexar somente um certificado por vez a uma distribuição do CloudFront.
Você prova que está autorizado a adicionar um determinado nome de domínio alternativo à distribuição de uma das seguintes maneiras:  
+ Anexar um certificado que inclui o nome de domínio alternativo, como nome\_do\_produto.exemplo.com.
+ Anexando um certificado que inclui um caractere curinga \* no início de um nome de domínio, para cobrir vários subdomínios com um certificado. Ao especificar um caractere curinga, é possível adicionar vários subdomínios como nomes de domínio alternativos no CloudFront.
Os exemplos a seguir ilustram como usar caracteres curinga em nomes de domínio em um trabalho certificado para autorizar a adição de nomes de domínio alternativos específicos no CloudFront.  
+ Você deseja adicionar marketing.exemplo.com como um nome de domínio alternativo. Você lista no seu certificado o seguinte nome de domínio: \*.exemplo.com. Ao anexar esse certificado ao CloudFront, você poderá adicionar qualquer nome de domínio alternativo à distribuição que substitua o caractere curinga nesse nível, incluindo marketing.exemplo.com. Você também pode, por exemplo, adicionar os seguintes nomes de domínio alternativos:
  + produto.exemplo.com
  + api.example.com

  No entanto, você não pode adicionar nomes de domínio alternativos que estão em níveis maiores ou menores que o caractere curinga. Por exemplo, você não pode adicionar os nomes de domínio alternativos exemplo.com nem marketing.produto.exemplo.com. 
+ Você deseja adicionar exemplo.com como um nome de domínio alternativo. Para fazer isso, você deve listar o próprio nome de domínio exemplo.com no certificado que anexa à distribuição.
+ Você deseja adicionar marketing.produto.exemplo.com como um nome de domínio alternativo. Para fazer isso, você pode listar \*.produto.exemplo.com no certificado ou pode listar o próprio marketing.produto.exemplo.com no certificado.

**Permissão para alterar a configuração de DNS**  
Ao adicionar nomes de domínio alternativos, é necessário criar registros CNAME para rotear consultas de DNS para os nomes de domínio alternativos à distribuição do CloudFront. Para fazer isso, você deve ter permissão para criar registros CNAME com o provedor de serviço DNS para os nomes de domínio alternativos que está usando. Normalmente, isso significa que você tem os domínios, mas pode estar desenvolvendo um aplicativo para o proprietário dele.

**Nomes de domínio alternativos e HTTP**  
Se quiser que os visualizadores usem HTTPS com um nome de domínio alternativo, será necessário realizar algumas configurações adicionais. Para obter mais informações, consulte [Usar nomes de domínio alternativos e HTTPS](using-https-alternate-domain-names.md).

## Restrições de uso de nomes de domínio alternativos
<a name="alternate-domain-names-restrictions"></a>

Observe as seguintes restrições de uso de nomes de domínio alternativos:

**Número máximo de nomes de domínio alternativos**  
Para saber o número máximo atual de nomes de domínio alternativos que podem ser adicionados a uma distribuição ou para solicitar uma cota maior (anteriormente conhecida como limite), consulte [Cotas gerais para distribuições](cloudfront-limits.md#limits-web-distributions).

**Duplicar e substituir nomes de domínio alternativos**  
Não será possível adicionar um nome de domínio alternativo a uma distribuição do CloudFront se o mesmo nome de domínio alternativo já existir em outra distribuição do CloudFront, mesmo se a sua Conta da AWS for a proprietária da outra distribuição.  
No entanto, você pode adicionar um nome de domínio alternativo curinga, como \*.exemplo.com, que inclui (sobrepõe) um nome de domínio alternativo não curinga, como www.exemplo.com. Se você tiver nomes de domínio alternativos sobrepostos em duas distribuições, o CloudFront enviará a solicitação para a distribuição com a correspondência de nome mais específica, independentemente da distribuição para a qual o registro de DNS apontar. Por exemplo, marketing.domínio.com é mais específico que \*.domínio.com.  
Se você tiver uma entrada de DNS curinga existente que aponta para uma distribuição do CloudFront e receber um erro de DNS configurado incorretamente ao tentar adicionar um novo CNAME com um nome mais específico, consulte [O CloudFront retorna um erro de registro DNS configurado incorretamente quando tento adicionar um novo CNAME](troubleshooting-distributions.md#troubleshoot-incorrectly-configured-DNS-record-error).

**Domain fronting**  
O CloudFront tem proteção contra a ocorrência de fronting de domínio entre contas diferentes da Conta da AWS. Esse cenário ocorre quando um cliente não padrão cria uma conexão TLS/SSL com um nome de domínio em uma Conta da AWS e depois faz uma solicitação HTTPS para um nome de domínio não relacionado em outra Conta da AWS.  
 Por exemplo, a conexão TLS pode se conectar a www.example.com e enviar uma solicitação para www.example.org.  
Para determinar se uma solicitação está sendo direcionada ao domínio, o CloudFront verifica o seguinte:  
+ Se a extensão SNI é igual ao cabeçalho `Host` da solicitação HTTP.
+ Se o certificado pertence à mesma Conta da AWS usada pela distribuição da solicitação.
+ Se a solicitação HTTP `Host` é coberta pelo certificado que é servido durante o handshake TLS.
Se nenhuma dessas condições for atendida, o CloudFront determinará que a solicitação é um fronting de domínio. O CloudFront rejeitará a solicitação com uma resposta de erro HTTP 421.  
Se o cliente não fornecer a extensão SNI e, em vez disso, receber um certificado \*.cloudfront.net padrão, o CloudFront aceitará as solicitações recebidas.

**Como o CloudFront identifica a distribuição de uma solicitação**  
O CloudFront identifica uma distribuição para uma solicitação HTTP com base no cabeçalho `Host`. O CloudFront não depende do endereço IP do CloudFront ao qual você está se conectando ou de qual handshake SNI foi fornecido durante o handshake TLS.  
Quando o CloudFront recebe uma solicitação, ele usa o valor do cabeçalho `Host` para fazer a correspondência entre a solicitação e a distribuição específica.  
Por exemplo, digamos que você tenha duas distribuições e tenha atualizado sua configuração de DNS para que os nomes de domínio alternativos sejam roteados para os seguintes endpoints:   
+ primary.example.com aponta para d111111primary.cloudfront.net 
+ secondary.example.com aponta para d222222secondary.cloudfront.net 
Se você fizer uma solicitação para https://primary.example.com, mas especificar o cabeçalho `Host` como secondary.example.com (por exemplo `curl https://primary.example.com -H "Host: secondary.example.com"`), a solicitação será roteada para a distribuição secundária.

**Adicionar um nome de domínio alternativo no nó superior (apex de zona) de um domínio**  
Ao adicionar um nome de domínio alternativo a uma distribuição, geralmente, você cria um registro CNAME na sua configuração de DNS para rotear consultas de DNS do nome de domínio para sua distribuição do CloudFront. No entanto, não é possível criar um registro CNAME no nó superior de um namespace DNS, também conhecido como o apex de zona. O protocolo DNS não permite isso. Por exemplo, se você registrar o nome do DNS exemplo.com, o apex de zona será exemplo.com. Você não pode criar um registro CNAME para exemplo.com, mas pode criar registros CNAME para www.exemplo.com, produtonovo.exemplo.com e assim por diante.  
Se estiver usando o Route 53 como o serviço de DNS, você poderá criar um conjunto de registros de recurso de alias, que tem as seguintes vantagens sobre os registros CNAME:  
+ Você pode criar um conjunto de registros de recurso de alias para um nome de domínio no nó superior (example.com).
+ Você pode criar um registro HTTPS para um nome de domínio alternativo para permitir a negociação do protocolo como parte da consulta de DNS, se o cliente oferecer suporte a ela. Para obter mais informações, consulte [Create alias resource record set](CreatingCNAME.md#alternate-domain-https).
+ Você não paga pelas consultas do Route 53 ao usar um conjunto de registros de recurso de alias.
Se ativar o IPv6, você deve criar dois conjuntos de registros de recurso de alias: um para rotear o tráfego IPv4 (um registro A) e outro para rotear o tráfego IPv6 (um registro AAAA). Para obter mais informações, consulte [Habilitar IPv6 (solicitações do visualizador)](DownloadDistValuesGeneral.md#DownloadDistValuesEnableIPv6) no tópico [Referência de configurações de todas as distribuições](distribution-web-values-specify.md). 
Para mais informações, consulte [Rotear o tráfego para uma distribuição na Web do Amazon CloudFront usando seu nome de domínio](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html) no *Guia do desenvolvedor do Amazon Route 53*.  
Se não estiver usando o Route 53 para seu DNS, você poderá solicitar endereços IP estáticos anycast para rotear domínios apex, como exemplo.com, para o CloudFront. Para obter mais informações, consulte [Solicite IPs estáticos anycast para usar na lista de permissões](request-static-ips.md).