как правильно обновлять кеш браузера пользователя после авторизации или выхода из системы

На сайте есть блок вход / регистрация или логин, если пользователь авторизован. После авторизации - редирект на ту же страницу, после выхода - редирект на главную.

По требованиям СЕО я устанавливаю заголовок Cache-Control: private, max-age= на какой-то срок, сутки к примеру. При этом получается, что авторизация срабатывает, но страницы, уже посещенные без авторизации (в том числе и текущая), загружаются из кеша и пользователь видит вход / регистрация вместо своего логина. После обновления f5 появляется логин.

Подскажите, как обычно выходят из положения?

Я пробовал авторизованным пользователям просто убирать кеширование, то есть делать так: на сервере проверяю, авторизован ли, и если да, устанавливаю header("Cache-Control: no-store"), но толку никакого - до нажатия f5 пользователь видит 200 OK (from disk cache)


UPD. Насколько понимаю сейчас - никак не убрать кеш по-человечески. Установка Vary: Cookie фактически делает само кеширование бессмысленным, так как куки все время разные.

В данный момент решил делать так: динамические блоки (авторизация, корзина) подгружаю ajax-запросами уже после загрузки основного контента. Это нормальная практика?


Ответы (0 шт):