Como solucionar problemas de distribuição - Amazon CloudFront

Como solucionar problemas de distribuição

Use as informações fornecidas aqui para ajudar a diagnosticar e corrigir erros de certificado, problemas de acesso negado ou outros problemas comuns que você possa encontrar ao configurar seu site ou aplicação com distribuições do Amazon CloudFront.

O CloudFront retorna um erro InvalidViewerCertificate quando tento adicionar um nome de domínio alternativo

Se o CloudFront retornar um erro InvalidViewerCertificate quando você tentar adicionar um nome de domínio alternativo (CNAME) à distribuição, revise as informações a seguir para ajudar a solucionar o problema. Esse erro pode indicar que um dos seguintes problemas devem ser resolvidos para que você possa adicionar o nome de domínio alternativo com êxito.

Os erros a seguir são listados na ordem em que o CloudFront verifica a autorização para adicionar um nome de domínio alternativo. Isso pode ajudar a solucionar problemas, pois, de acordo com o erro que o CloudFront retornar, você poderá ver quais verificações foram concluídas com êxito.

Não há nenhum certificado anexado à distribuição.

Para adicionar um nome de domínio alternativo (CNAME), você deve anexar um certificado válido e confiável à distribuição. Revise os requisitos, obtenha um certificado válido que os atenda, anexe-o à distribuição e tente novamente. Para obter mais informações, consulte Requisitos para o uso de nomes de domínio alternativos.

Há muitos certificados na cadeia de certificados para o certificado que foi anexado.

Você só pode ter até cinco certificados em uma cadeia de certificados. Reduza o número de certificados na cadeia e tente novamente.

A cadeia de certificados inclui um ou mais certificados que não são válidos para a data atual.

A cadeia de certificados para um certificado que foi adicionado tem um ou mais certificados que não são válidos, ou porque ainda não é um certificado válido ou porque um certificado expirou. Verifique os campos Not Valid Before (Não válido antes de) e Not Valid After (Não válido depois de) nos certificados da cadeia de certificados para garantir que todos eles sejam válidos de acordo com as datas listadas.

O certificado anexado não está assinado por uma autoridade de certificação (CA) confiável.

O certificado anexado ao CloudFront para verificar um nome de domínio alternativo não pode ser um certificado autoassinado. Ele deve ser assinado por uma CA confiável. Para obter mais informações, consulte Requisitos para o uso de nomes de domínio alternativos.

O certificado anexado não está formatado corretamente

O nome de domínio e o formato do endereço IP que estão incluídos no certificado e o formato do próprio certificado devem seguir o padrão de certificados.

Ocorreu um erro interno do CloudFront.

O CloudFront foi bloqueado por um problema interno e não pôde validar os certificados. Nesse caso, o CloudFront retorna um código de status HTTP 500 e indica que há um problema interno do CloudFront com a anexação do certificado. Aguarde alguns minutos e tente novamente para adicionar o nome de domínio alternativo com o certificado.

O certificado anexado não abrange o nome de domínio alternativo que você está tentando adicionar.

Para cada nome de domínio alternativo que você adiciona, o CloudFront requer a anexação de um certificado SSL/TLS de uma autoridade de certificação (CA) confiável que abranja o nome de domínio, para validar sua autorização para usá-lo. Atualize o certificado para incluir um nome de domínio que abranja o CNAME que você está tentando adicionar. Para obter mais informações e exemplos de como usar nomes de domínio com caracteres curingas, consulte Requisitos para o uso de nomes de domínio alternativos.

Não consigo visualizar os arquivos na minha distribuição

Se você não puder visualizar os arquivos na distribuição do CloudFront, consulte os tópicos a seguir para obter algumas soluções comuns.

Você se cadastrou no CloudFront e no Amazon S3?

Para usar o Amazon CloudFront com uma origem do Amazon S3, cadastre-se no CloudFront e no Amazon S3 separadamente. Para obter mais informações sobre como se cadastrar no CloudFront e no Amazon S3, consulte Configuração.

Suas permissões do bucket e do objeto do Amazon S3 estão definidas corretamente?

Se você estiver usando o CloudFront com uma origem do Amazon S3, as versões originais do seu conteúdo serão armazenadas em um bucket do S3. A maneira mais fácil de usar o CloudFront com o Amazon S3 é tornar todos os seus objetos legíveis publicamente no Amazon S3. Para fazer isso, você deve habilitar de forma explícita os privilégios de leitura pública em cada objeto carregado no Amazon S3.

Caso seu conteúdo não possa ser lido publicamente, você deverá criar um controle de acesso à origem (OAC) do CloudFront para que o CloudFront possa acessar o conteúdo. Para obter mais informações sobre o controle de acesso à origem do CloudFront, consulte Restringir o acesso ao conteúdo de uma origem do Amazon Simple Storage Service.

As propriedades do bucket e do objeto são independentes. Você deve conceder privilégios explicitamente a cada objeto no Amazon S3. Os objetos não herdam as propriedades dos buckets, e as propriedades dos objetos devem ser definidas de forma independente do bucket.

Seu nome de domínio alternativo (CNAME) está configurado corretamente?

Se você já tem um registro CNAME para seu nome de domínio, atualize-o ou substitua-o por um novo que aponte para o nome do domínio da sua distribuição.

Além disso, verifique se o CNAME aponta para o nome do domínio da distribuição, não para o bucket do Amazon S3. Você pode confirmar se o registro CNAME do seu sistema DNS aponta para o nome do domínio da sua distribuição. Para fazer isso, use uma ferramenta de DNS, como o dig.

O exemplo a seguir mostra uma solicitação do DIG de um nome de domínio images.example.com e a parte relevante do resultado. Em ANSWER SECTION, consulte a linha que contém CNAME. O registro CNAME do nome de domínio estará configurado corretamente se o valor à direita do CNAME for o nome de domínio da distribuição do CloudFront. Se ele for o bucket do servidor de origem do Amazon S3 ou outro nome de domínio, o registro CNAME estará configurado incorretamente.

[prompt]> dig images.example.com ; <<> DiG 9.3.3rc2 <<> images.example.com ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15917 ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;images.example.com. IN A ;; ANSWER SECTION: images.example.com. 10800 IN CNAME d111111abcdef8.cloudfront.net. ... ...

Para obter mais informações sobre os CNAMEs, consulte Uso de URLs personalizados adicionando nomes de domínio alternativos (CNAMEs).

Você está usando o URL correto na distribuição do CloudFront?

Verifique se o URL mencionado usa o nome de domínio (ou CNAME) da sua distribuição do CloudFront, não do bucket do Amazon S3 ou da origem personalizada.

Você precisa de ajuda para solucionar um problema com a origem personalizada?

Se você precisar que a AWS ajude a solucionar um problema com uma origem personalizada, é possível que precisemos inspecionar as entradas do cabeçalho X-Amz-Cf-Id das suas solicitações. Se você ainda não estiver registrando essas entradas, considere fazer isso no futuro. Para ter mais informações, consulte Usar o Amazon EC2 (ou outra origem personalizada). Para obter ajuda adicional, consulte a Central de Suporte da AWS.

Mensagem de erro: Certificate: <certificate-id> Is Being Used by CloudFront (O certificado: <certificate-id> está sendo usado pelo CloudFront)

Problema: você está tentando excluir um certificado SSL/TLS do armazenamento de certificados do IAM e está recebendo a mensagem "Certificate: <certificate-id> is being used by CloudFront (O certificado: certificate-id> está sendo usado pelo CloudFront)".

Solução: cada distribuição do CloudFront deve ser associada ao certificado padrão do CloudFront ou a um certificado SSL/TLS personalizado. Antes de excluir um certificado SSL/TLS, você deve alternar o certificado (substituir o certificado SSL/TLS personalizado atual por outro) ou reverter do uso de um certificado SSL/TLS personalizado para o uso do certificado padrão do CloudFront. Para corrigir isso, conclua as etapas de um dos seguintes procedimentos: