Best practices - url versioning static cache

Anton Bessonov exelib на gmail.com
Вс Янв 22 10:02:02 UTC 2017


А что, если перенести это на уровень бильд-процесса? Успешно использую с 
мэйвеном (подсчёт версии, копирование файлов в /static/${number} и 
замена переменных в ресурсаx), вэбджар и ocLazyLoad.

На уровне энджина просто добавлаю кэш-форева для /static и /webjar.


On 22.01.2017 10:27, S.A.N wrote:
> Здравствуйте.
>
> Для статичных файлов, есть старая добрая практика, добавлять в url, некий
> номер версии этого файла, клиентам отдавать в заготовках максимальное время
> кеширования, как-то так:
>
> expires max;
>
> <script src="/app.js?version=xxx">
>
> Но, добавлять версию в query, уже как правило нельзя, в js и css файлах,
> может быть импорт с относительной адресацией, например в app.js
>
> import MyModule from './myModule.js';
>
> Браузер загрузить файл './myModule.js' в юрл которого не указана версия,
> тоже самое в css.
> Мы решили указывать версию файла в root директории url, вот так:
> /xxx/app.js
> Тогда браузер будет загружать локальные импорты правильно:
> /xxx//myModule.js
>
> Но это требует rewrite директив, в конфиге Nginx, мне это не очень
> нравится.
> Возможно есть другое более удачное решения?
> Спасибо.
>
> Posted at Nginx Forum: https://forum.nginx.org/read.php?21,272099,272099#msg-272099
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru


-- 
Certified Prince2:2009 Project Manager
Professional Scrum Expert
Oracle Certified Expert, Enterprise JavaBeans Developer
Oracle Certified Professional, Java SE 6 Programmer

Now that's a test of the character of an organization.
Of the organizations that are attempting to implement
Scrum probably, 30% - 35% will successfully implement it.
- Ken Schwaber



Подробная информация о списке рассылки nginx-ru