Браузеры делают это автоматически с помощью нескольких механизмов кэширования, которые предоставляет HTTP. Два механизма, наиболее очевидно полезных для определения того, изменилась ли страница, - это концепция Теги сущности и заголовок HTTP Last Modified . Эти механизмы позволяют браузеру делать условные запросы к веб-сайту, например. получить страницу, только если она была изменена.
Цитирование RFC 2616 по HTTP 1.1:
3.11 Теги сущности
Теги сущностей используются для сравнения двух или более сущностей из одного
запрашиваемый ресурс. HTTP / 1.1 использует теги сущностей в ETag (раздел
14.19), If-Match (раздел 14.24), If-None-Match (раздел 14.26) и
Поля заголовка If-Range (раздел 14.27). Определение того, как они
используются и сравниваются как валидаторы кеша в разделе 13.3.3.
тег сущности состоит из непрозрачной строки в кавычках, возможно с префиксом
показатель слабости.
Ключевым моментом здесь является то, что ETag является средством проверки кэша . Если браузер имеет кэшированную версию страницы (в RFC называемую resource ), он может использовать ETag , чтобы определить, действительна ли кэшированная страница, т.е. если страница не изменилась на сервере.
А по поводу даты модификации:
14.25 Если модифицирован-С
Поле заголовка запроса If-Modified-Since используется с методом для
сделать условным: если запрошенный вариант не был изменен
поскольку время, указанное в этом поле, объект не будет
вернулся с сервера; вместо этого ответ 304 (не измененный)
быть возвращенным без какого-либо тела сообщения.
Ключевым моментом здесь является то, что сервер может знать, когда страница была изменена, и затем может информировать клиента.
Если вы откроете монитор HTTP (например, Fiddler для Windows) и увидите, как ваш браузер общается с веб-сайтами, вы увидите использование этих механизмов из первых рук, когда браузер делает условные запросы.
Чтобы конкретно ответить на ваш вопрос о заголовке Last Modified , этот заголовок сам по себе не будет работать для большинства страниц, которые вы найдете. Но в сочетании с ETag он может помочь вам начать работу.