Вопрос про кеширование Nginx

12
M
На сайте с 01.12.2009
Offline
235
#11
Dram:
Повторю как я себе это "представлял"

1. Запрос к серверу - Нгихс (страница изменена) - загружаем новую - ответ 200
2. Запрос к серверу - Нгихс (не изменена) - загружаем из кеша - ответ 304.

Как оно наверное работает в реальности

1. Запрос к серверу - Нгихс (страница изменена) - загружаем новую - ответ 200
2. Запрос к серверу - Нгихс (не изменена) - загружаем из кеша - ответ 200.

Я вам написал у вас кеш. пока время не истечет, не очистете кеш, вы не получите новую страницу.

Администратор Linux,Freebsd. построения крупных проектов.
Malcolm
На сайте с 02.05.2007
Offline
119
#12

Для динамических страниц у вас бэкенд должен отдавать корректный заголовок "Last-Modified" для начала. Иначе и будет получаться, что в кэше только страницы с 200 ответом, которые и отдаются каждый раз.

Для статики кэш nginx вообще не нужен, там сам nginx формирует по умолчанию заголовки Last-Modified и ETag и отдаст ответ с кодом 304 если файл не изменялся.

ZomBat
На сайте с 08.10.2016
Offline
24
#13
Dram:
Само кеширование работает, я проверял, меня только смущает этот 200-й ответ, может правильнее все же 304, если файл или страница не изменена ?

Про fastcgi_cache так сразу не скажешь, 304 отдается фронтом если бекэенд не поменялся для динамики, а вот про экспирес, явно чета не то, браузер то хоть должен понимать, что грузить еще раз смысла нет, а на вашем скриншоте, явно загружает.

должно быть как то так:

смотрите заголовки (пример):

в свободное время шаманю над веб-окружением VPS...
D
На сайте с 28.06.2008
Offline
1114
#14

Разобрался - у меня галочка стояла Дисейбл Кеш :))

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий