6 января 2014 г., 16:04 пользователь Gena Makhomed <g...@csdoc.com> написал: > On 06.01.2014 10:35, S.A.N wrote: > >> Есть uri >> /user/bar >> Отдает контент с заголовками >> Cache-Control: private, max-age=0
если было бы "Cache-Control: private", вроде как было бы то же самое, нет ? на 10 символов короче. >> Это клиенское кеширования, с постояной ревалидацией на бекенде. >> Даные заголовки запрещают Nginx кешировать страницу, никаких файл кеша в >> Nginx не создаётся её кеширует только браузер, нам это и нужно на данном >> uri. >> По этому в нашем конфиге прописана передача от клиента к бекенду >> заголовков >> кеширования, чтобы бекенд мог ревалидировать кеш клиента. >> Вот эти строки >> fastcgi_param HTTP_IF_NONE_MATCH $http_if_none_match if_not_empty; >> fastcgi_param HTTP_IF_MODIFIED_SINCE $http_if_modified_since if_not_empty; >> Это работает отлично, но дело в том что эти строчки конфига ломают Nginx >> кеширования, из-за них появляется баг с кешированием 304 статуса. >> >> Отключить Nginx кеширования тоже не можем потому что на других uri мы >> используем Nginx кеширования, например uri >> /news/list >> Отдает контент с заголовками >> Cache-Control: public, max-age=1 >> Эта страница должна попадать в кеш Nginx. > > > там где нужен кеш - его можно включить. > там где кеш не нужен - его можно выключить. > в том числе и в контексте отдельных location`ов. > > http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_cache > > syntax: fastcgi_cache zone | off; > default: fastcgi_cache off; > context: http, server, location > > Defines a shared memory zone used for caching. The same zone can be used in > several places. The off parameter disables caching inherited from the > previous configuration level. > > >> Нам надо что бы клиент и Nginx кеширования и клиент работали в рамках >> одного >> server{}, это возможно сделать? > > > да. > > передавать на backend заголовки If-Modified-Since и If-None-Match > или нет - это тоже можно настроить по разному для разных location`ов. перечитал RFC, к числу hop-by-hop хедеров они не относятся, получается, их надо всегда передавать на бекенд? ну и такой вопрос, раз движок php, используете ли вы средства типа APC и xdebug ? а миллисекунды у вас неплохие. > > -- > Best regards, > Gena > > > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru