Когда вы обновляете свой браузер, браузер отправляет запрос на сервер обо всех ресурсах, необходимых для отображения страницы. Если браузер имеет кэшированную версию какого-либо из требуемых ресурсов, он может отправить заголовок If-Modified-Since
в запросе для этого ресурса. Когда сервер получает этот заголовок, а не просто обслуживает ресурс, он сравнивает измененное время ресурса со временем, представленным в заголовке If-Modified-Since
. Если ресурс изменился, сервер отправит ресурс как обычно со статусом 200
. Но если ресурс не изменился, сервер ответит со статусом 304
(Не изменено), и браузер будет использовать его кэшированную версию.
В вашем случае дата изменения изменилась , поэтому браузер отправляет новую версию.
Лучшим способом проверки кэширования в вашем браузере, вероятно, будет использование fiddler и отслеживание запросов и ответов во время навигации по сайту. Не используйте кнопку обновления в своем тестировании, поскольку это часто приводит к тому, что браузер запрашивает свежие копии всех ресурсов (т. Е. Пропускает заголовок If-Modified-Since
).
Редактировать: Выше может быть упрощение того, что происходит. Конечно, веб-поиск даст множество глубоких статей, которые могут дать более глубокое понимание того, как работает кэширование браузера в каждом браузере.