Best practices - url versioning static cache

S.A.N nginx-forum на forum.nginx.org
Вс Янв 22 09:27:46 UTC 2017


Здравствуйте.

Для статичных файлов, есть старая добрая практика, добавлять в 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