Jeśli udostępniam tylko wersję spakowaną gzipem, czy powinienem dodać nagłówek varcode encoding?

11

Właśnie przeniosłem statyczną stronę z VPS na Amazon S3. Zdecydowałem się wyświetlać tylko spakowane gzipem wersje moich stron, ponieważ S3 nie jest serwerem WWW, nie mogę mieć logiki opartej na nagłówkach. Używam również Cloudfront jako CDN.

Testowałem swoją stronę na http://gtmetrix.com/ i dostałem złą notatkę, ponieważ nie dodałem vary accept encoding header. Sprawdziłem więc, o co chodzi i o ile rozumiem, ma to sens, gdy obsługujemy zarówno wersje skompresowane, jak i nieskompresowane.

Więc chciałbym, żebyś pomógł mi to wyjaśnić. Czy powinienem to dodać? Dzięki :)

Kev
źródło

Odpowiedzi:

7

Postanowiłem wyświetlać tylko spakowane wersją strony

Jeśli służąc tylko pliki, które zostały skompresowane przy użyciu gzip , a następnie przy użyciu Vary: Accept-Encodingbędzie żadnych korzyści, ponieważ nie będzie nieskompresowane kopie plików służą do klientów, którzy nie wysyłają Accept-Encoding: gzipw żądaniu HTTP . W dzisiejszych czasach większość klientów to wysyła, więc powinno być dobrze.

Testy wydajności witryn internetowych nie wiedzą, że udostępniasz tylko pliki skompresowane, a także nie są one niezawodne. Możesz na przykład zauważyć, że usługa, z której korzystałeś, umieszcza je pod kolumną oznaczoną etykietą RECOMMENDATION, więc mądrze jest śledzić wszelkie tego typu sugestie z pewnymi ustaleniami faktów (tak jak ty), zanim zaczniesz się zbytnio niepokoić lub próbować je wdrożyć.

dan
źródło
Chcę tylko dodać, że moje wątpliwości wynikają z tego postu: maxcdn.com/blog/accept-encoding-its-vary-important
Kev
Jesteś w porządku. W tym artykule omówiono używanie Vary: Accept-Encodingna serwerze źródłowym z CDN. Jak wskazałeś, twój serwer pochodzenia tego nie zapewnia i tak naprawdę nie jest już potrzebny, ponieważ według Google tutaj : All modern browsers support and automatically negotiate gzip compression for all HTTP requests.Dlatego zalecamy używanie gzip na wszystkich stronach. Ten artykuł (od 2/2013) stwierdza tylko: These days you're unlikely to have clients without compression, but why risk cache mixups?...
Dan
1
Ponieważ podajesz tylko pliki skompresowane , „pomieszania pamięci podręcznej” (tj. Z nieskompresowanych wersji tych samych plików) nie miałyby zastosowania do Twojej sytuacji.
dan