2016-05-04 23 views
5

Czy CloudFront korzysta z nagłówków Cache-Control (np. max-age) w odpowiedziach na błędy (np. 503) od początku? A może długość buforowania odpowiedzi na błędy zawsze jest kontrolowana przez buforowanie błędów Minimum TTL skonfigurowane w dystrybucji? Włączenie słowa "minimum" sugeruje, że zachowanie buforowania błędów może być podobne do zachowania buforowania bez błędów, gdy źródło zapewnia Cache-Control max-age, ale dokumentacja na ten temat nie wydaje się jednoznacznie potwierdzać tej sugestii.Czy CloudFront korzysta z nagłówków Cache-Control w odpowiedziach na błędy (np. 503) od początku?

Odpowiedz

2

CloudFront respektuje Cache-Control max-age nagłówków w odpowiedziach na błędy z początków strony internetowej, jeśli i kiedy są one większe niż minimalny czas buforowania błędów TTL (który domyślnie wynosi pięć minut).

Jeśli źródło ustawia wartość max-age, która jest mniejsza niż minimalny bufor TTL z buforowaniem błędów, CloudFront buforuje odpowiedź dla buforowania błędów Minimalna wartość TTL, ale przekazuje zestawowi max-age ustawioną przez punkt początkowy klientowi niezakłócone.

Podobnie, jeżeli pochodzenie ustawia Cache-Control do must-revalidate,no-cache,no-store, CloudFront buforuje odpowiedź za błąd buforowania Minimalna TTL ale przechodzi nagłówek Cache-Control ustawioną przez pochodzenia do klienta niezakłócony.

Błąd buforowania Minimalna TTL można dostosować do kodów błędów 400, 403, 404, 405, 414, 416, 500, 501, 502, 503 i 504. Nie można go dostosować do wszystkich obsługiwanych kodów błędów naraz; należy go dostosować osobno dla każdego kodu błędu. Odbywa się to poprzez utworzenie "Niestandardowej odpowiedzi na błąd". Nieco mylące, nie oznacza to, że podajesz niestandardową stronę błędu. Podczas tworzenia niestandardowej odpowiedzi na błąd możesz wybrać "Nie" na "Dostosuj odpowiedź błędu" (to brzmi jak bzdura, ale to prawda). Jeśli to zrobisz, dostosowujesz tylko minimalny czas buforowania błędów dla wybranego kodu błędu HTTP.