Принудительно очистить браузер от кэша принудительно сайтом по условию
Столкнулся с колоссальной проблемой. Не кидайте картошками, скажу сразу облазил все и всЁ, и ничего не подходит к моим нуждам. Уже руки вбились в кровь искать варианты и решения.
По этому пришел сюда.
По Сушеству:
- Есть сайт, сайт периодически обновляют на новую версию, и после перехода на новую версию случаются проблема касательно кэша в браузере у клиента.
- Есть принудительная очистка кэша на сайте, но как сообщает поддержка она нужна для: "Кеш в админке чистится для проекта. Но у каждого пользователя есть еще кеш браузера, его почистить из админки невозможно."
Решение в определенных случаях помогает на пользовательском ПК использовать комбинацию Ctrl+Shift+R или же через инспектор в браузере включить функцию "отключить кэш" и тогда выполняется загрузка.
Нашел вот такой код:
function verificarNovaVersio() {
var sVersio = localStorage['gcf_versio'+ location.pathname] || 'v00.0.0000';
$.ajax({
url: './_upload/js/versio.txt',
dataType: 'text',
cache: 'false',
contentType: 'false',
processData: 'false',
type: 'post'
}).done(function(sVersioFitxer) {
console.log('Versió App: '+ sVersioFitxer +', Versió Caché: '+ sVersio);
if (sVersio < (sVersioFitxer || 'v00.0.0000')) {
localStorage['gcf_versio'+ location.pathname] = sVersioFitxer;
location.reload(true);
}
});
}
в папке создал файл "versio.txt" и указал версию v00.0.0001 но почему то у меня это не сработало.
Мне бы подошел такой вариант: Если скажем сайт обновился с версии 3.15 на версию 3.16, то в определённом файлике указываем версию сайта, и пользователь при посещения сайта, видит разницу в версии у себя с кэше и файле на сайте и выполняет перезагрузку сайта с полной очисткой кэша и куков этой страницы скажем аналог Ctrl+Shift+R или аналог инспектора Отключить кэш.
Желательно все это реализовать через JS код, так как нет возможности вносить изменения в php, apache, htacces, а только внедрить код js.
Самой собой первым делов в Meta теги включил эти сроки:
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />