Браузер не может повторно кэшировать обновленный сайт - PullRequest
0 голосов
/ 04 августа 2020

Я полностью переписал веб-сайт, все его ресурсы были перемещены в другие папки (изменена файловая структура), но если я захожу на сайт с устройства, которое его кэшировало, он загружает старый файл html и ищет старые пути к ресурсам. Я попытался решить эту проблему с помощью метатегов, я изменил индекс по умолчанию. php start file на home. php в .htaccess, я пытался решить это через js, но ничего не работает. После нескольких дней поисков я думаю, что нашел проблему. Веб-страница была преобразована в PWA, и я зарегистрировал сервис-воркера, чтобы он кэшировал страницу index. php. Я думаю, что кеш этого сервис-воркера может быть моей проблемой. Как я могу его обновить, чтобы заново кэшировать сайт? Проблема в том, что я могу обновить файл index. php, но браузер по-прежнему загружает старый файл.

Я уверен, что это можно как-то решить, но у меня его нет опыт с этим. Любые идеи? Спасибо!

var cacheName = 'prisma-pwa';
var filesToCache = [
    '/',
];

/* Start the service worker and cache all of the app's content */
self.addEventListener('install', function(e) {
  e.waitUntil(
    caches.open(cacheName).then(function(cache) {
      return cache.addAll(filesToCache);
    })
  );
});
/* Serve cached content when offline */
self.addEventListener('fetch', function(e) {
  e.respondWith(
    caches.match(e.request).then(function(response) {
      return response || fetch(e.request);
    })
  );
});

1 Ответ

0 голосов
/ 04 августа 2020

В некоторых случаях недостаточно сбросить с помощью F5 или даже CTRL-F5. Это помогает действительно удалить кеш в вашем браузере.

Если вы используете Chrome, вы можете отключить кеш в настройках при использовании DevTools. Иногда это мне помогает. Небольшая потеря производительности меня не беспокоит при тестировании.

введите описание изображения здесь

...