Crea una pagina di errore personalizzata per codici di HTTP stato specifici - Amazon CloudFront

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Crea una pagina di errore personalizzata per codici di HTTP stato specifici

Se preferisci visualizzare un messaggio di errore personalizzato anziché quello predefinito, ad esempio una pagina che utilizza la stessa formattazione del resto del sito Web, puoi fare in modo che venga CloudFront restituito al visualizzatore un oggetto (ad esempio un HTML file) che contiene il tuo messaggio di errore personalizzato.

Per specificare il file che desideri restituire e gli errori per i quali il file deve essere restituito, aggiorni la distribuzione per specificare tali valori. CloudFront Per ulteriori informazioni, consulta Configura il comportamento di risposta agli errori.

Di seguito è riportata una pagina di errore personalizzata di esempio:

Schermata di un esempio di pagina AWS 404 personalizzata.

È possibile specificare un oggetto diverso per ogni codice di HTTP stato supportato oppure utilizzare lo stesso oggetto per tutti i codici di stato supportati. Puoi decidere di specificare pagine di errore personalizzate per alcuni codici di stato e non per altri.

Gli oggetti che stai servendo CloudFront possono non essere disponibili per diversi motivi. Tali opzioni rientrano in due categorie generali:

  • Gli errori del client indicano un problema con la richiesta. Ad esempio, l'oggetto con il nome specificato non è disponibile oppure l'utente non possiede le autorizzazioni necessarie per ottenere un oggetto nel bucket Amazon S3. Quando si verifica un errore del client, l'origine restituisce un codice di HTTP stato nell'intervallo 4xx a CloudFront.

  • Gli errori del server indicano un problema con il server di origine. Ad esempio, il HTTP server è occupato o non disponibile. Quando si verifica un errore del server, il server di origine restituisce un codice di HTTP stato nell'intervallo 5xx o CloudFront non riceve una risposta dal server di origine per un certo periodo di tempo e presuppone un codice di stato 504 (Gateway Timeout). CloudFront

I codici di HTTP stato per i quali è CloudFront possibile restituire una pagina di errore personalizzata includono i seguenti:

  • 400, 403, 404, 405, 414, 416

  • 500, 501, 502, 503, 504

    Note
    • Se CloudFront rileva che la richiesta potrebbe non essere sicura, CloudFront restituisce un errore 400 (Bad Request) anziché una pagina di errore personalizzata.

    • Puoi creare una pagina di errore personalizzata per il codice di HTTP stato 416 (Requested Range Not Satisfiable) e modificare il codice di HTTP stato che CloudFront restituisce agli utenti quando l'origine restituisce un codice di stato 416 a. CloudFront Per ulteriori informazioni, consulta Modificare i codici di risposta restituiti da CloudFront. Tuttavia, CloudFront non memorizza nella cache le risposte del codice di stato 416, quindi anche se specifichi un valore per Error Caching TTL Minimum per il codice di stato 416, non lo utilizza. CloudFront

    • In alcuni casi, CloudFront non restituisce una pagina di errore personalizzata per il codice di stato HTTP 503 anche se si configura CloudFront in tal senso. Se il codice CloudFront di errore è Capacity Exceeded oLimit Exceeded, CloudFront restituisce un codice di stato 503 al visualizzatore senza utilizzare la pagina di errore personalizzata.

    • Se hai creato una pagina di errore personalizzata, CloudFront restituirà Connection: close o Connection: keep-alive per i seguenti codici di risposta:

      • CloudFront restituzioni Connection: close per i codici di stato: 400, 405, 414, 416, 500, 501

      • CloudFront restituisce Connection: keep-alive i codici di stato: 403, 404, 502, 503, 504

Per una spiegazione dettagliata di come vengono CloudFront gestite le risposte di errore provenienti dall'origine, consulta. Come CloudFront elabora i codici di stato HTTP 4xx e 5xx a partire dalla tua origine