Alterar códigos de resposta exibidos pelo CloudFront
Você pode configurar o CloudFront para retornar um código de status HTTP diferente para o visualizador do que o CloudFront recebeu da origem Por exemplo, se a origem retornar um código de status 500 para o CloudFront, você poderá solicitar que o CloudFront retorne uma página de erro personalizada e um código de status 200 (OK) ao visualizador. Há vários motivos pelos quais você pode querer que o CloudFront retorne um código de status ao visualizador diferente daquele retornado por sua origem ao CloudFront:
-
Alguns dispositivos de internet (alguns firewalls e proxies corporativos, por exemplo) interceptam códigos de status HTTP 4xx e 5xx e impedem que a resposta seja retornada ao visualizador. Neste caso, se você substituir
200
, a resposta não será interceptada. -
Se não for necessário distinguir diferentes erros de cliente ou erros de servidor, você pode especificar
400
ou500
como o valor que o CloudFront retorna para todos os códigos de status 4xx ou 5xx. -
Você pode retornar um código de status
200
(OK) e um site estático para que seus clientes não saibam que seu site está inativo.
Se você habilitar os logs padrão do CloudFront e configurar o CloudFront para alterar o código de status HTTP na resposta, o valor da coluna sc-status
nos logs conterá o código de status especificado. No entanto, o valor da coluna x-edge-result-type
não é afetado. Ele contém o tipo de resultado da resposta da origem. Por exemplo, digamos que você configure o CloudFront para retornar um código de status 200
ao visualizador quando a origem retornar 404
(Not Found) ao CloudFront. Quando a origem responde a uma solicitação com um código de status 404
, o valor na coluna sc-status
no log será 200
, mas o valor na coluna x-edge-result-type
será Error
.
Você pode configurar o CloudFront para retornar qualquer um dos seguintes códigos de status HTTP junto com uma página de erro personalizada:
-
200
-
400, 403, 404, 405, 414, 416
-
500, 501, 502, 503, 504