Почему CloudFront не GZIP мои страницы HTML / JSP - PullRequest
0 голосов
/ 03 января 2019

Я настроил CloudFront перед моим Elastic Beanstalk / веб-приложением с балансировкой нагрузки, и правило статического содержимого (изображения Png и т. Д.) Кэшируется и обслуживается GZIPPED.

Однако мои страницы JSP не Gzipped .

Обратите внимание, что я явно установил правило по умолчанию, чтобы оно не кэшировалось, установив min TTL в 0, но это, вероятно, не нужно, поскольку мой сервер происхождения не возвращает заголовок Content-Length для страниц JSP, поэтому он будет никогда не кэшироваться в любом случае.

CloudFront будет кэшироваться, только если ...

  1. Поддерживается тип файла (text / html is)
  2. Ответ - 1000 -> 10 000 000 байтов (это так)
  3. Должен быть предоставлен заголовок Content-Length (это НЕ )
  4. Content-Encoding должен не быть установлен (это не так)

Так что это объясняет, почему он не кэшируется, достаточно справедливо.

Но , почему мои HTML-страницы не получают GZIPPED ? К вашему сведению, все мои расширения HTML и JSP обрабатываются с помощью процессора JSP.

Network Diagnostics

Static Behavior (works)

Default Behavior (no GZIP)

Origin Settings

1 Ответ

0 голосов
/ 10 января 2019

Похоже, я был прав, пока моя страница не была изменена так, чтобы она возвращала заголовок ответа Content-Length, CloudFront не кэшировал и не GZIP контент.

...