У меня есть веб-сервер, на котором хранятся файлы page.html и style.css.Когда я пытаюсь открыть IP_ADDRESS / index.html в браузере, браузер последовательно отправляет два запроса на веб-сервер.Первый запрос для page.html, второй для style.css, который нужен для page.html.Я хотел бы кэшировать style.css в клиентском браузере как можно дольше.Для этого я вставляю строку в заголовок следующим образом:
Cache-Control: public, max-age=31536000, immutable
Когда я пытаюсь открыть page.html в браузере, я впервые вижу два запроса, которые имеют статус 200 для обоих.В следующий раз, когда я открываю page.html, я также вижу два запроса, но запрос к page.html имеет статус 200, а запрос к style.css имеет статус 304.
Я прослушал трафик в Wireshark и даже попыталсяBurp Suite для сканирования http запросов / ответов, и я увидел следующую картинку:
- Первое подключение к веб-серверу: для первого запроса к page.html я получаю ответ «200 OK», для второго запросана style.css я получаю ответ «200 OK».
- Второе подключение к веб-странице: для первого запроса к page.html я получаю ответ «200 OK», для второго запроса (есть заголовок
If-Modified-Since
) на style.css Я получаю ответ "304 Not Modified".
Но проблема в том, что второй запрос к style.css все равно отправляет.Мне нужно полностью избавиться от этого, потому что клиентский браузер уже имеет этот файл.Скажите, пожалуйста, что я должен добавить к заголовкам ответов style.css, чтобы избежать каких-либо запросов к этому файлу, в то время как клиентский браузер имеет кеш файла style.css.Я хотел бы видеть, когда в первый раз клиент получает файлы page.html и style.css, сохраняет style.css в кеше локального браузера, а в следующий раз клиент запрашивает только page.html без style.css, который клиент получает из локальногокеш.
Спасибо за любую помощь.