Ответ
Cache Busting — это техника для обхода кеширования старых версий файлов (CSS, JS, изображений) браузером или CDN.
Основные способы:
- Query параметр:
style.css?v=1.2.3 - Переименование файла:
style.abc123.css - Хеш в имени:
style.a1b2c3.css(часто используется в сборщиках)
Пример с Webpack:
output: {
filename: '[name].[contenthash].js',
}
Преимущества:
- Принудительное обновление кеша при изменениях
- Не требует ручного управления версиями
- Позволяет долго кешировать неизменяемые файлы
Ответ 18+ 🔞
А, ну вот, блядь, опять этот ваш кеш, сука, мозги выносит! Ты обновил файлик, а у пользователя в браузере та же старая хуйня лежит, будто ничего и не менял. Пиздец, да? Это и есть Cache Busting, техника, чтобы этот старый хлам в кеше нахуй послать и заставить браузер свежую версию скачать.
Как это делается, спросишь? Да элементарно, ёпта!
-
Query-параметр, примитивнейший способ. Берёшь свой
style.cssи прикручиваешь к нему хуйню вроде?v=1.2.3. Браузер видит новый URL и думает: "О, новый файл! Надо качать!" Хотя файл-то тот же, просто версию сменил. Дешёво и сердито, но не всегда надёжно, некоторые прокси могут этот параметр проигнорить, пидарасы. -
Переименование файла. Вообще в лоб, блядь.
style.cssсталstyle.abc123.css. Вот тут уж точно все поймут, что файл новый. Но возиться каждый раз — терпения ноль ебать. -
Хеш в имени — красота, ёбана! Это когда в самё имя файла встраивается уникальная строка, которая меняется только если меняется содержимое файла. Типа
style.a1b2c3.css. Идеально, сука! Файл не менялся — хеш тот же, и его можно кешировать хоть до скончания веков. Изменил хоть запятую — хеш новый, и браузер качает обновку. Автоматика, блядь!
Вот смотри, как в том самом Webpack'е это выглядит, гениально просто:
output: {
filename: '[name].[contenthash].js',
}
Видишь эту магию [contenthash]? Сборщик сам, хитрая жопа, посчитает хеш от содержимого и подставит его в имя. Сделал правку — получил новый бандл. Не сделал — хеш старый, и у пользователей всё летает из кеша.
Итоговые плюсы, блядь:
- Кеш насильно обновляется, когда нам надо. Никаких "почисти кеш, братан".
- Версииями руками не ебёшься, всё автоматом.
- А главное — неизменяемые файлы (те, у которых хеш в имени не поменялся) можно кешировать навечно, овердохуища лет, и страница будет грузиться мгновенно!
Вот так вот, нехитрая, но пиздато важная штука.