LINUX.ORG.RU

Какие бы прописать заголовки кеширования для скриптов?

 


1

1

На http://fontello.com/ после апгрейдов юзерам иногда начинают валиться ошибки, которые лечатся по ctrl+F5. Хоть и не до конца понятно почему, но в кеше что-то-как-то неудачно застревает.

Я бы мог конечно насувать всяких no-cache, но не уверен что это самая удачная идея. Какие вообще есть варианты, если контент страницы генерится скриптом?

В принципе есть мысль добавить eTag и втыкать must-revalidate. Это самое удачное решение или есть лучше? Стримов нет, так что возможность влепить etag есть всегда.

★★★★★

Можно добавить в url скрипта GET-параметром какую-нибудь метку (например, timestamp, обновляемый при перезапуске сервера/сервиса):

<script src="/app.js?_t=1534325891></script>

Cache-Control: max-age=... при этом можно выкрутить до комфортного максимума.

ksa242
()
Ответ на: комментарий от Deleted

В имя скрипта, который на сервере генерит рутовую страницу сайта? Ты точно нормальный людь?

Vit ★★★★★
() автор топика
Ответ на: комментарий от Vit

на сервере

Server Side Rendering? Думал простой SPA.

Deleted
()

Могу заблуждаться, но современные браузеры, с каждым разом все более отдаляются от понимания dialup-сеансов, компактности, лаконичности и прочих ~удобств~ ...

Другими словами, кэширование работает отвратительно - как будто его вообще нет ... Особенно это стало наблюдаться после активации борьбы с возможностью работать через прокси - складывается такое впечатление что проксей (локальный squid) как бы вообще нет ...

Здесь смотрел? https://stackoverflow.com/questions/49547/how-to-control-web-page-caching-acr...

anonymous
()

Какие вообще есть варианты, если контент страницы генерится скриптом?

Для этого в RFC2616 есть weak ETag.

В принципе есть мысль добавить eTag и втыкать must-revalidate. Это самое удачное решение или есть лучше? Стримов нет, так что возможность влепить etag есть всегда.

Если раздаешь скриптами, то можно просто проверять If-None-Match, по стандарту его достаточно, чтобы отдать 304. Еще можно посмотреть на Vary, Last-Modified и Date.

xpahos ★★★★★
()
Ответ на: комментарий от anonymous

Спасибо, в итоге остановились на таком же варианте.

Vit ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.