Domínio personalizado do AWS API Gateway: o domínio que você forneceu já está associado a uma distribuição existente do CloudFront

2

Estou simplesmente tentando configurar um domínio personalizado no gateway da API. Eu tenho o certificado ACM "* .mysite.com.au" que está sendo usado atualmente para exibir um site estático do S3 por meio do CloudFront em "beta.mysite.com.au". Desejo criar um domínio personalizado para "api.mysite.com.au" com este certificado.

No entanto, estou recebendo o seguinte erro no console do AWS API Gateway:

The domain name you provided is already associated with an existing CloudFront distribution. Remove the domain name from the existing CloudFront distribution or use a different domain name. If you own this domain name and are not using it on an existing CloudFront distribution, please contact support.

Atualmente, não estou usando o "api.mysite.com.au" em uma distribuição do CloudFront. Então estou perdido. Alguém já encontrou esse problema antes? E se sim, como posso resolvê-lo?

Agradecemos antecipadamente

Strainy

    
por Strainy 22.05.2017 / 03:05

1 resposta

1

Existem três, talvez quatro possibilidades:

  • você de fato configurou este domínio como um Nome de Domínio Alternativo no CloudFront - nesta conta da AWS ou em outra conta e você esqueceu, ou

  • alguém configurou acidentalmente ou deliberadamente esse domínio em uma distribuição do CloudFront ou

  • você já configurou isso no API Gateway, mas em uma região da AWS diferente ou

  • este é um bug na integração entre o API Gateway e o CloudFront.

Para solucionar problemas:

Vá para o CloudFront e crie uma nova distribuição.

Tente definir este nome de host como um nome de domínio alternativo.

Se isso funcionar, isso parece um erro na integração do API Gateway / CloudFront. Exclua o nome do host de Nomes de domínio alternativos para essa nova distribuição, aguarde alguns minutos para que a distribuição retorne para Deployed status e tente novamente no API Gateway. (Mais tarde, exclua a distribuição - não é necessário).

Mas, vou supor que o acima não funcionará. Você deve obter um erro do CloudFront, CNAMEAlreadyExists . (Não é realmente um CNAME, mas é assim que eles infelizmente o chamam.)

Portanto, siga o processo oficial para comprovar a propriedade e o controle do seu domínio nomeie e associe-o à nova distribuição do CloudFront.

Este processo deve liberar esse nome de host de qualquer distribuição do CloudFront que o esteja reivindicando.

Após a conclusão, remova esse nome de host da configuração de Nomes de domínio alternativos da nova distribuição, salve as alterações, aguarde até que ele retorne ao estado Deployed e volte ao gateway de API e tente novamente. (Mais tarde, exclua a distribuição não usada.)

O problema aqui é que - assim como o namespace do bucket do S3 - o namespace do cabeçalho Host: do front-end do CloudFront é global. Um nome de host não pode ser associado a mais de uma distribuição do CloudFront, incluindo as distribuições "invisíveis" que o API Gateway usa. O erro implica que o que você está tentando usar, por algum motivo, já é.

Isso não deve estar relacionado a um curinga que você possa ter do ACM.

    
por 22.05.2017 / 04:23