Modifica dei codici di risposta restituiti da CloudFront - Amazon CloudFront

Modifica dei codici di risposta restituiti da CloudFront

È possibile configurare CloudFront per restituire un codice di stato HTTP diverso al visualizzatore rispetto a quello ricevuto da CloudFront dall'origine. Ad esempio, se il server di origine restituisce a CloudFront un codice di stato 500, è possibile chiedere a CloudFront di restituire una pagina di errore personalizzata e un codice di stato 200 (OK) al visualizzatore. Ci sono vari motivi per cui chiedere a CloudFront di restituire al visualizzatore un codice di stato diverso da quello restituito a CloudFront dal server di origine:

  • Alcuni dispositivi Internet (ad esempio, alcuni firewall e proxy aziendali) intercettano i codici HTTP 4xx e 5xx e impediscono la restituzione della risposta al visualizzatore. In questo scenario, se si sostituisce 200, la risposta non viene intercettata.

  • Se non si desidera distinguere tra diversi errori di server o client, è possibile specificare 400 o 500 come valore restituito da CloudFront per tutti i codici di stato 4xx o 5xx.

  • Potresti scegliere di restituire un codice di stato 200 (OK) e un sito Web statico, in modo che i tuoi clienti non sappiano che il sito Web è inaccessibile.

Se abiliti i log standard CloudFront e si configura CloudFront in modo da modificare il codice di stato HTTP nella risposta, il valore della colonna sc-status nei log contiene il codice di stato specificato. Tuttavia, il valore della colonna x-edge-result-type non ne è interessato. Contiene il tipo di risultato della risposta dall'origine. Ad esempio, supponiamo che si configuri CloudFront per restituire un codice di stato 200 per il visualizzatore quando il server di origine restituisce a 404 (Non trovato) a CloudFront. Quando l'origine risponde a una richiesta con un codice di stato 404, il valore nella colonna sc-status nel log sarà 200, ma il valore nella colonna x-edge-result-type sarà Error.

È possibile configurare CloudFront per restituire uno dei seguenti codici di stato HTTP insieme a una pagina di errore personalizzata:

  • 200

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

  • 500, 501, 502, 503, 504