1. Как правильно кэшировать в браузер Javascript/CSS файлы, что бы при изменении версии файла, файл кэшировался.
2. И как правильно сделать версионность кэшируемых файлов?
Ответ
Кеширование осуществляется за счет заголовков ответа (Cache-Control). В apache кеширование можно включить используя mod_expires Тут документация
Так же может быть полезным для общего развития прочтение данной статьи
Часто используют добавление get параметра к имени файла. Например /_build.css?v=1. Второй подход - это складывать файл в папку с именем версии /v1/_build.css. Но первый вариант проще, т.к. он позволяет легче поддерживать прошлые версии (при публикации новой версии - старая останется доступна).
По просьбе из комментариев дополню первый пункт:
Т.к. мы управляем версиями наших файлов, то мы можем включить кеширование на максимальный срок (Хотя уверен, что хватит и месяца).
Вот код для apache всё из той же статьи
Т.е. для всех файлов с расширением css и js мы добавляем заголовок ответа, который говорит браузеру, что данные файлы необходимо закешировать на 2592000 секунд (30 дней)
Комментариев нет:
Отправить комментарий