Отключение кеша Chrome для разработки сайтов - PullRequest
1539 голосов
/ 17 апреля 2011

Я изменяю внешний вид сайта (изменения CSS), но не вижу результата в Chrome из-за раздражающего постоянного кэша. Я попытался Shift + обновить, но это не работает.

Как я могу временно отключить кеш или обновить страницу так, чтобы я мог видеть изменения?

Ответы [ 31 ]

2 голосов
/ 11 декабря 2017

У меня была такая же проблема, я пытался:

  • Control Shift R,
  • Отключить кэш в F12
  • Control F5.

Затем я обнаружил, что использование манифеста .appcache для сайта, не являющегося https, устарело .Я удалил свой файл site.appcache и его ссылку в теге html, и теперь я вижу последнюю версию каждой страницы!

2 голосов
/ 27 января 2017

Не уверен, что вы используете, но если вы используете ASP.Net, вы можете сделать следующее, что работает как шарм:

<link href="@Url.Content("~/Content/Site.css")?time=@DateTime.Now" rel="stylesheet" />

В основном это автоматически добавит дату и время в конецфайла каждый раз, когда он запускается, то есть, поскольку имя файла технически отличается, вам никогда не придется беспокоиться о его повторном кэшировании.

2 голосов
/ 18 сентября 2016

Еще одна опция для отключения кэша предоставляется моим 3-м расширением Chrome Инспектор размера страницы , который отключает кэш точно так же, как Devtools.

Кроме того, расширение быстро сообщает о размере страницы, использовании кэша, сетевых запросах и времени загрузки веб-страницы удобным способом. Плюс его открытый исходный код на Github .

Screenshot - Page Size Inspector

1 голос
/ 07 апреля 2017

Как я могу временно отключить кеш или обновить страницу таким образом, чтобы я мог видеть изменения?

Неясно, на какой «кеш» вы ссылаетесь. Существует несколько различных методов, которые браузер может постоянно кэшировать. Веб-хранилище является одним из них, Cache-Control является другим.

В некоторых браузерах также есть Cache, используемый в сочетании с Service Workers , для создания Progressive Web Apps (PWA), обеспечивающих автономную поддержку.

Чтобы очистить кэш для PWA

self.caches.keys().then(keys => { keys.forEach(key => console.log(key)) })

дляперечислите имена ключей кеша, затем выполните:

self.caches.delete('my-site-cache')

, чтобы удалить ключ кеша по имени (т. е. my-site-cache).Затем обновите страницу.

Если после обновления вы видите какие-либо связанные с работником ошибки в консоли, вам также может понадобиться отменить регистрацию зарегистрированных работников:

navigator.serviceWorker.getRegistrations()
  .then(registrations => {
    registrations.forEach(registration => {
      registration.unregister()
    }) 
  })
0 голосов
/ 08 августа 2018

Я использую (в Windows) Ctrl + Shift + Delete, и когда появляется диалоговое окно Chrome, нажмите клавишу ввода. Это можно настроить с тем, что необходимо очищать каждый раз, когда вы выполняете эту последовательность. Не нужно иметь dev. инструменты открываются в этом случае.

0 голосов
/ 05 марта 2018

Я был в ситуации, когда браузер загружал данные кеша с диска, даже когда я проверял отключенный кеш (я использовал Chrome).Все мои css и js загружались с сервера, но не с веб-страницы.Это происходило как на моем локальном компьютере, так и на Производственном.

Чтобы исправить это, мне нужно добавить дополнительный параметр в URL, чтобы заставить браузер получать веб-страницу с сервера, даже контроллеру это не нужно.

Я использовал ASP.Net, вот мой пример

//Controller function
public ActionResult Index()
    {
        return View();
    }
//Link
@Html.Action("Index", "Home", new { ts = DateTime.Now.Ticks.ToString()})

В результате будет сгенерирована ссылка типа: http://www.myweb.com/Home/Index?ts=636558555408282209

Это моя ситуацияи решение.Надеюсь, это кому-нибудь поможет.

0 голосов
/ 23 сентября 2017

Добавьте эту строку кода к себе, и она должна сделать свое дело.

<meta name="robots" content="noarchive">
0 голосов
/ 14 июня 2017

Убийца кэша Chrome - безусловно лучший вариант. Поскольку URL-адрес магазина для установки кэша-убийцы недоступен, вы можете скачать файл CRX здесь:

https://www.crx4chrome.com/extensions/jpfbieopdmepaolggioebjmedmclkbap/

после загрузки файла расширения откройте Chrome -> дополнительные инструменты -> расширения, затем перетащите файл CRX из проводника или с рабочего стола (в зависимости от места, где вы скачали файл) в окно Chrome, чтобы установить расширение .

0 голосов
/ 22 января 2014

Эй, если ваш сайт использует PHP, поместите следующий небольшой фрагмент PHP в начале вашей HTML-страницы:

   //dev versioning - stop caching
   $rand = rand(1, 99999999);

Теперь везде, где вы загружаете ресурсы, такие как CSS- или JS-файлы, в сценарий или элемент ссылки, вы добавляете сгенерированное случайное значение к URL-адресу запроса после добавления '?' на URI через PHP:

    echo $rand;

Вот и все! Больше не будет браузера, который кэширует ваш сайт - независимо от того, какой именно.

Конечно, удалите ваш код перед публикацией или просто установите $ rand в пустую строку, чтобы снова разрешить кэширование.

0 голосов
/ 10 августа 2016

Начиная с версии 50 (если я правильно помню), опция «Отключить кеш» была удалена из настроек Devtool. Перейдите на вкладку «Сеть», где есть опция «Отключить кеш».

...