Кэш в CDN, но не в браузере

В настоящее время я использую Akamai в качестве CDN, но я заметил, что браузер также кэширует контент. Это здорово, что браузер кэширует изображения/css/js, но я хотел бы знать, есть ли способ не кэшировать в браузере, а кэшировать в Akamai.

Сейчас, прямо сейчас из моего origin я отправляю заголовки следующим образом:

Cache-Control: public, must-revalidate, max-age=300
Expires: Sun, 19 Feb 2012 19:04:30 GMT
Date: Sun, 19 Feb 2012 18:59:30 GMT

Akamai распознает эти заголовки, но также передает их обратно пользователю. Это делает так, что браузер также кэширует содержимое.

Большую часть времени это работает отлично, но у нас также есть некоторая логика CDN, которая, если у пользователя есть cookie для входа в систему, позволяет обойти кэш CDN и перейти прямо к оригиналу.

Таким образом, если, допустим, неавторизованный пользователь нажимает кнопку "Войти", он проходит через процесс входа и возвращается на ту же страницу. Несмотря на то, что CDN запрашивает эту страницу у источника, браузер фактически запрашивает ту же страницу снова, и это выглядит так, как будто вход не сработал.

Теперь я могу заставить процесс входа добавить параметр запроса типа ?l=1 или что-то в этом роде, но должен быть лучший способ.

Я склоняюсь к тому, что Akamai может переписать заголовок Cache-Control на жестко закодированное значение no-cache, но мне интересно, есть ли способ сделать это в origin?

Спасибо!

14
задан Jorge Lopez 19 February 2012 в 19:05
поделиться