Expires vs max-age, какой из них имеет приоритет, если оба они объявлены в ответе HTTP? - PullRequest
34 голосов
/ 26 сентября 2011

Если HTTP-ответ, который возвращает и Expires, и указание максимального возраста, какой из них используется?

Cache-Control: max-age=3600
Expires: Tue, 15 May 2008 07:19:00 GMT

Учитывая, что каждый относится к разному моменту времени.

Ответы [ 2 ]

45 голосов
/ 26 сентября 2011

Смотрите этот ответ:

Разница между тремя правилами истечения срока действия .htaccess

Если ответ содержит заголовок Expires и директиву max-age, директива max-age переопределяет заголовок Expires , даже если Срок действия заголовка является более ограничительным. Это правило позволяет серверу происхождения обеспечить для данного ответа более длительное время истечения HTTP / 1.1 (или позже) кеш, чем к HTTP / 1.0 кеш. Это может быть полезно, если некоторые кэши HTTP / 1.0 неправильно рассчитывают возраст или время истечения, возможно, из-за десинхронизированных часов.

8 голосов
/ 06 декабря 2013

Этот случай объясняется в официальном RFC на W3C.

Директива max-age имеет приоритет над Expires

...