Я использую сервер apache tomcat и имею веб-приложение, отображающее несколько js, css и файлов изображений. Я хочу убедиться, что эти файлы кэшируются браузером, поэтому каждый раз они не запрашиваются. Однако я заметил, что некоторые файлы кэшируются, а другие - нет. Я узнал, что заголовок ответа из приложения истекает: «31 декабря 1969 года в 19:00». Пройдя через this, я удалил ограничение безопасности tomcat из web.xml, который успешно удалил заголовок. Я также настроил заголовок Expires в своем приложении до 1 недели от настоящего. Это также не гарантировало кэширование страниц.Страницы, которые не загружаются в браузере
После этого я настроил заголовок Cache-Control на публикацию с максимальным возрастом до 1 недели. Ни одно из этих изменений не помогает мне. Кроме того, страницы получать кэш и не получает кэшируется имеют те же заголовки, как показано ниже:
HTTP/1.1 200 OK
Cache-Control: max-age=604800, public
ETag: 240983
Last-Modified: Fri, 09 Sep 2016 18:49:42 GMT
Date: Wed, 01 Feb 2017 07:34:25 GMT
via: HTTP/1.1 ab-d-klt-tom1
Expires: Wed, 08 Feb 2017 07:35:29 GMT
Content-Type: application/x-javascript
Transfer-Encoding: chunked
Content-Encoding: gzip
Vary: Accept-Encoding
X-FRAME-OPTIONS: SAMEORIGIN
X-Powered-By: Servlet/3.0
X-UA-Compatible: IE=edge
Server: Apache
Помимо этого, я также попытался ExpiresFilter, как описано here без удачи.
EDIT: Мое приложение при развертывании в среде Windows с Tomcat и без SSL успешно кэширует все файлы в браузере.
Однако, когда приложение развертывается в среде Linux с Tomcat, а SSL не кэширует файлы. Является ли SSL причиной этого?
Можете ли вы показать нам HTTP-заголовки запроса ресурса, который не кэшируются браузером? –
@LeonidVasilyev Я отредактировал мое сообщение выше. Может ли SSL быть причиной этой проблемы? –
заголовки запроса заключаются в следующем: GET /html/en/default/***.css HTTP/1.1 Хост: 10.62.137.70 соединения: поддержания активности User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, например, Gecko) Chrome/55.0.2883.87 Safari/537.36 Принять: текст/css, */*; q = 0,1 Ссылка: *** Accept-Encoding: gzip, deflate, sdch, br Accept-язык: en-US, en; q = 0,8 Cookie: _ga = GA1.1.794081272.1485321205; _gat = 1; JSESSIONID = *** –