Различные Cache-Control для браузера и CDN - PullRequest
1 голос
/ 16 января 2012

Можно ли установить разные заголовки контроля кэша для CDN и браузера? В настоящее время я использую

header("Cache-Control: max-age=3600, public");

Поскольку я использую public, я считаю, что и браузер, и CDN кэшируют страницу в течение 1 часа. Я установил исходную тягу на CDN, так что сервер CDN будет извлекать страницу с веб-хоста.

Я хочу, чтобы клиенты кэшировались в течение 10 минут, а CDN - в течение одного часа. это возможно?

Если это невозможно, я не хочу, чтобы браузеры вообще кэшировали содержимое, а CDN - один раз в час.

Ответы [ 2 ]

0 голосов
/ 13 декабря 2016

Возможно иметь разные настройки управления кэшем для браузера и CDN. Таким образом, существует два типа настройки управления кэшем:

1). Параметр управления кэшем браузера на пограничный сервер: обычно это делается на сервере Origin, и CDN обычно учитывает этот параметр.
2). Параметр управления кэшированием от пограничного сервера до исходного: обычно это делается на уровне CDN. Кроме того, можно также добавить конфигурацию на уровне CDN, чтобы переопределить эту настройку управления кэшем с сервера Origin, как показано в 1).

Таким образом, в итоге вы можете иметь разные настройки управления кэшем для браузера и CDN, вы также можете выбрать не кэширование в браузере, а только кэширование на уровне CDN.

0 голосов
/ 21 февраля 2013

Возможно, но это зависит от конкретного CDN. В общем случае CDN будут интерпретировать заголовок Cache-Control таким же образом. CDN имеет собственный механизм управления кэшем. Например, Akamai будет читать собственный HTTP-заголовок (X-Akamai-что-то), который имеет приоритет над стандартными заголовками кэша.

...