Re: Валидация кэша на Nginx

2016-06-05 Пенетрантность Steven3009
> Извините, но как вы определяете, кто разбрается, а кто нет, если вы
> сами не
> разбираетесь?
> Вам слишком многое _кажется_.


http://pbs.twimg.com/media/BiEBJFqCQAA3CiW.jpg

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,267368,267402#msg-267402

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Валидация кэша на Nginx

2016-06-05 Пенетрантность Steven3009
> 
> примеры подобных инструментов
> 
> https://webpack.github.io/
> https://github.com/jetheredge/SquishIt
> 
> (список можно продолжать и продолжать)
>

Спасибо, интересно.

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,267368,267390#msg-267390

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Валидация кэша на Nginx

2016-06-04 Пенетрантность Steven3009
Илья Шипицин Wrote:
---
> ETag и Last-Modified - для так называемого "ленивого" кеширования.
> 
> это ситуация, когда вы не знаете, насколько долго можно кешировать
> ваши
> ответы, и не сообщаете браузеру Cache-Control: max-age=NNN
> 
> в этом случае браузер кеширует ответ, и при повторном запросе браузер
> валидирует при помощи If-Modified-Since/If-None-Match, можно ли
> использовать то, что он закешировал
> 
> количество запросов не уменьшается, уменьшается трафик ответа сервера
> (за
> счет того, что у 304 нет тела)
> 
> но браузеру все равно придется делать запросы, он не сможет начать
> рендерить страницу, пока не убедится, что закешированные стили можно
> использовать
> 
> при более грамотной настройке кеша вы выставляете заголовки ответа
> Cache-Control: max-age=NNN и браузер не будет валидировать, можно ли
> использовать то, что в кеше, а будет рендерить страницу сразу же

Гугл рекомендует использовать ETag или Last-Modified как раз для
определения, можно ил использовать кэш или нет
"Эти заголовки позволяют браузеру эффективно обновлять кешированные ресурсы,
отправляя запросы GET каждый раз, когда пользователь явным образом
перезагружает страницу. Условные запросы GET не возвращают полный ответ,
если ресурс не изменился на сервере, и таким образом обеспечивают меньшую
задержку, чем полные запросы. "

Вопрос как раз в том, что при загрузке страницы/повторной загрузки страницы
- измененные статические элементы не обновляются. Обновление происходит
только по F5/обновить.

Вы хотите сказать, что я ничего не упускаю и так и должно работать? И если у
меня изменится стиль или картинка, то пользователь если не нажмет Ф5 или не
почистит кэш, не получит обновлений, пока не закончится срок действия кэша?
2016 год...


 
> 2016-06-04 22:01 GMT+05:00 Steven3009 <nginx-fo...@forum.nginx.org>:
> 
> > Я так не думаю. Зачем тогда Etag и Last-Modified?
> > Думаю, я что-то упускаю.
> >
> > Posted at Nginx Forum:
> > https://forum.nginx.org/read.php?21,267368,267376#msg-267376
> >
> > ___
> > 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

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,267368,267378#msg-267378

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Валидация кэша на Nginx

2016-06-04 Пенетрантность Steven3009
Я так не думаю. Зачем тогда Etag и Last-Modified? 
Думаю, я что-то упускаю.

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,267368,267376#msg-267376

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Валидация кэша на Nginx

2016-06-04 Пенетрантность Steven3009
Всем привет, 

Сделал кэширование ресурсов на Nginx.
Кэширование есть, а валидации, если к примеру поменялся стиль без нажатия на
F5 нет.

ЧАСТЬ КОНФИГА
server {
listen   80;
server_name  111.111.111.111 sitename.ru;
etag on;
if_modified_since exact;
location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|pdf)$
{
root /storage/www;
expires 30d;
add_header Cache-Control  'public';
}
   
fastcgi_pass unix://var/run/php-fpm/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /storage/www$fastcgi_script_name;
fastcgi_pass_header Last-Modified;
include fastcgi_params;
fastcgi_read_timeout 240s;
fastcgi_send_timeout 240s;
fastcgi_intercept_errors on;
}

Проверка http://last-modified.com/ru/if-modified-since.html заголовка
показывает
Сайт css/stylesheet.css отдал время последней модификации, но не
отреагировал на If-Modified-Since

Посоветуйте, пожалуйста, что делать?

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,267368,267368#msg-267368

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru