Sto usando CloudFront con un'origine Amazon S3. Perché non riesco ad accedere ai miei file?

Ultimo aggiornamento: 07/04/2022

Sto usando un bucket Amazon Simple Storage Service (Amazon S3) come origine della mia distribuzione Amazon CloudFront ma non riesco ad accedere ai file o a scaricarli nel mio bucket S3. In che modo posso risolvere il problema?

Risoluzione

Risoluzione dei problemi relativi agli errori 403 Access Denied (Accesso negato)

Controlla le restrizioni geografiche di CloudFront

Se la tua distribuzione utilizza restrizioni geografiche, verifica di non limitare i Paesi da cui provengono le tue richieste.

Per maggiori informazioni, consulta Limitazione della distribuzione geografica del contenuto.

Verifica di non applicare HTTPS con gli endpoint di un sito Web S3

Gli endpoint del sito Web di Amazon S3 non supportano HTTPS. Se hai configurato una distribuzione CloudFront con la CLI, l'API o l'SDK, verifica di non applicare HTTPS con l'endpoint del sito Web S3 come origine.

Per verificare se stai utilizzando HTTPS, usa l'API GetDistributionConfig o il comando CLI get-distribution-config per ottenere la configurazione della distribuzione. Se OriginProtocolPolicy è impostato su https-only, modifica OriginProtocolPolicy per utilizzare https-only.

Per utilizzare HTTPS, utilizza CloudFront con un endpoint dell'API REST S3 come origine. Per ulteriori informazioni, consulta How do I use CloudFront to serve HTTPS request for my Amazon S3 bucket? (In che modo posso utilizzare CloudFront per servire le richieste HTTPS per il mio bucket Amazon S3?)

Conferma che i tuoi oggetti S3 siano inferiori a 30 GB

La dimensione massima del file consentita per le richieste HTTP GET, POST e PUT è di 30 GB. Se un file è più grande di 30 GB, viene visualizzato un errore 400 "BadRequest".

Per maggiori informazioni, consulta Quote generali sulle distribuzioni.

Verifica la presenza di caratteri speciali nei nomi delle chiavi degli oggetti S3

Se utilizzi caratteri speciali nel nome della chiave dell'oggetto S3, essi potrebbero richiedere una gestione speciale. Per ulteriori informazioni, consulta Linee guida per la denominazione delle chiavi degli oggetti.

Conferma di non utilizzare oggetti root predefiniti da una sottodirectory

Una distribuzione CloudFront non restituisce oggetti root predefiniti da una sottodirectory, anche se l'oggetto è configurato nella distribuzione. Per ulteriori informazioni, consulta Specifica di un oggetto root predefinito.

Come soluzione alternativa, è possibile utilizzare Lambda@Edge per restituire l'oggetto root predefinito da una sottodirectory. Per ulteriori informazioni, consulta Implementing default directory indexes in Amazon S3-backed Amazon CloudFront origins using Lambda@Edge (Implementazione di indici di directory predefiniti nelle origini Amazon CloudFront supportate da Amazon S3 utilizzando Lambda@Edge).

Conferma di non utilizzare intestazioni host con un'origine S3

Per le origini di Amazon S3, la memorizzazione nella cache basata sull'intestazione host o l'inoltro dell'intestazione host non sono supportati. Per ulteriori informazioni, consulta Scelta delle intestazioni su cui basare il caching.

Risoluzione dei problemi relativi all'errore "No 'Access-Control-Allow-Origin' header is present on the requested resource" ("Nessuna intestazione 'Access-Control-Allow-Origin' presente nella risorsa richiesta")


Troubleshooting error responses from your origin (Risoluzione dei problemi relativi alle risposte di errore dall'origine)

Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?