«Cache-Control: max-age = 0, no-cache», но браузер обходит запрос сервера (и обращается к кешу)?

Я использую Chrome 40 (так что-то хорошее и современное).

Cache-Control: max-age=0, no-cache установлен на всех страницах - поэтому я ожидаю, что браузер будет использовать что-то из своего кэша только в том случае, если он сначала проверил сервер и получил304 Not Modified ответ.

Однако после нажатия кнопки «Назад» браузер весело обращается к своему кешу без проверки с сервером.

Если я открываю ту же страницу, как я достиг с помощью кнопки «Назад», в новой вкладке, то он проверяет сервер (и получает303 See Other ответ как все изменилось).

См. Снимки экрана ниже, показывающие выходные данные для двух разных случаев на вкладке «Сеть» в Chrome Developer Tools.

Я думал, что мог бы использоватьmax-age=0, no-cache в качестве более легкой альтернативы весуno-store где я не хочу, чтобы пользователи видели устаревшие данные с помощью кнопки «назад» (но там, где данные не имеют ценности и поэтому могут быть кэшированы).

Мое пониманиеno-cache (увидетьВот а такжеВот на SO) заключается в том, что браузер должен всегда повторной проверки всех ответов. Так почему же Chrome не делает этого при использовании кнопки «Назад»?

Являетсяno-store единственный вариант?

200 ответ (из кеша) на нажатие кнопки назад:

303 ответ на запрос той же страницы в новой вкладке:

Ответы на вопрос(3)

Ваш ответ на вопрос