Отключение кеша Chrome для разработки веб-сайта

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

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

Ответы

Ответ 1

Chrome DevTools может отключить кэш.

  1. Щелкните правой кнопкой мыши и выберите Inspect Element, чтобы открыть DevTools. Или используйте одно из следующих сочетаний клавиш:
    • F12
    • Command + Option + i на Mac
    • Control + Shift + i в Windows или Linux
  2. Нажмите Network на панели инструментов, чтобы открыть панель сети.
  3. Установите флажок Disable cache вверху.

screenshot of development tools panel

Имейте в виду, что, как указано в твите из @ChromiumDev, этот параметр активен только тогда, когда открытые устройства являются.

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

Если вы не хотите использовать флажок Disable cache, длительное нажатие на кнопку обновления с открытым DevTools покажет меню с параметрами Hard Reload или Empty Cache and Hard Reload, которое должно иметь аналогичное эффект. Читайте о разнице между вариантами. Доступны следующие ярлыки:

  • Command + Option + R на Mac
  • Control + Shift + R в Windows или Linux

long press

Ответ 2

enter image description here

Очистка кеша слишком раздражает, когда нужно очищать кеш 30 раз в час... поэтому я установил расширение Chrome под названием Classic Cache Killer, которое очищает кеш при каждой загрузке страницы.

Ссылка на Chrome Store (бесплатно) (теперь без вредоносных программ!)

Теперь мой макет json, javascript, css, html и data обновляется каждый раз при каждой загрузке страницы.

Мне никогда не придется беспокоиться, если мне нужно очистить кэш.

Я нашел около 20 очистителей кеша для Chrome, но этот казался легким и не требующим усилий. В обновлении Cache Killer теперь может оставаться "всегда включенным".

Примечание: я не знаю автора плагина. Я просто нашел это полезным.

Ответ 3

Picture of reload menu

  • Поднимите консоль разработчика Chrome, нажав F12, а затем (при открытой консоли):

  • Щелкните правой кнопкой мыши (или удерживайте нажатой левую кнопку) на кнопке перезагрузки в верхней части браузера и выберите "Empty Cache и Hard Reload".

Это выйдет за рамки "Hard Reload", чтобы полностью очистить кеш, гарантируя, что что-либо, загруженное через javascript или т.д., также позволит избежать использования кеша. Вам не нужно возиться с настройками или чем-то еще, это быстрое решение с 1 выстрелом.

Ответ 4

Есть еще два параметра отключить кеширование страниц в Chrome для хорошего:

1. Деактивировать кэш-память Chrome в реестре

Открыть реестр (Start → Command → Regedit)

Искать: HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command

Измените деталь после... chrom.exe "на это значение: –disable-application-cache –media-cache-size=1 –disk-cache-size=1 — "%1"

Пример: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -disable-application-cache –media-cache-size=1 –disk-cache-size=1 — "%1"

ВАЖНО:

  • есть пробел и дефис после... chrome.exe "

  • оставить путь к chrome.exe, поскольку он

  • Если вы скопируете строку, обязательно проверьте, действительно ли кавычки являются фактическими кавычками.

2. Деактивируйте кэш Chrome, изменив свойства ярлыка

Щелкните правой кнопкой мыши значок Chrome и выберите "Свойства" в контекстном меню. Добавьте следующее значение в путь: –disk-cache-size=1

Пример: "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" –disk-cache-size=1

ВАЖНО:

  • есть пробел и дефис после... chrome.exe "

  • оставить путь к chrome.exe, поскольку он

Ответ 5

Если вы не хотите редактировать настройки Chrome, вы можете использовать режим инкогнито для тех же результатов.

Ответ 6

В дополнение к параметру отключить кеш (который вы получаете через кнопку в правом нижнем углу окна инструментов разработчика - Инструменты | Инструменты разработчика или Ctrl + Shift + I), на в панели инструментов инструментов разработчика вы можете щелкнуть правой кнопкой мыши и выбрать "Очистить кеш" во всплывающем меню.

Ответ 7

  1. F12, чтобы открыть Chrome DevTools
  2. F1, чтобы открыть настройки DevTools
  3. Установите флажок Отключить кэш (пока открыт DevTools), как показано ниже:

Это в настоящее время на вкладке Preferences, которая по умолчанию. Возможно, вам придется прокрутить вниз. Этот флажок был перемещен по крайней мере пару раз, так как этот вопрос был задан. Последний раз я проверял, это было в средней колонке внизу. Если он открыт на более тонком экране и в разделе "Установки" есть 2 столбца, он может находиться справа вверху. Не стесняйтесь обновлять этот пост, если он изменится или прокомментируйте, и я обновлю пост.

enter image description here

Ответ 8

В Каналном канале (и, возможно, последующий и стабильный канал будет следовать), это можно найти в качестве второго варианта в левой части в разделе "Общие".

Disable Cache in Chrome Canary Channel

В дополнение к этому всегда есть возможность переключиться в режим инкогнито с помощью Ctrl + Shift + N. Даже если это, к сожалению, также закончит ваш сеанс.

Ответ 9

Вместо удара "F5" Просто нажмите:

"Ctrl + F5"

Ответ 10

Использование Ctrl + Shift + R для обновления было приятным, но не получило все, что мне нужно. все же некоторые вещи не будут обновляться, например данные, хранящиеся в js и css. нашел решение: панель инструментов google для веб-разработчиков Chrome.. После установки параметров панели инструментов выберите "reset страница".

Ответ 11

Чтобы быть ясным, флажок отключить кеш в Chrome (v17 здесь, но с v15, я считаю) не находится в главном пользовательском интерфейсе настроек. Он находится в настройках пользовательских настроек разработчика.

  • В меню значков гаечного ключа браузера (меню префиксов) выберите Инструменты → Инструменты разработчика

  • В появившемся пользовательском интерфейсе инструментов разработчика щелкните значок шестеренки внизу справа.

  • Установите флажок "Отключить кеш" в разделе "Сеть".

Ответ 12

Отключить кеш в chrome работает только при открытии инструментов dev

Ответ 13

Пока ошибка не устранена, вы можете использовать плагин Clear Cache Chrome, а также установить для него комбинацию клавиш.

После установки щелкните правой кнопкой мыши и перейдите к параметрам:

enter image description here

Установите Automatically reload active tab after clearing data:

enter image description here

Выберите Everything для периода времени:

enter image description here

И тогда вы можете перейти в Меню => Инструменты => Расширения:

enter image description here

Нажмите на сочетание клавиш внизу:

enter image description here

И установите сочетание клавиш, например Ctrl + Shift + R:

enter image description here

Ответ 14

Фактически, если вы не возражаете против использования пропускной способности, он более безопасен по нескольким причинам, чтобы отключить кеширование и рекомендовано многими сайтами безопасности.

Chromium не должен быть достаточно высокомерным, чтобы принимать решения и применять настройки для пользователей.

Вы можете отключить кеш в UNIX с помощью --disk-cache-dir =/dev/null.

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

Ответ 15

Это может помочь кому-то.

Я сфальсифицировал свой Nginx для сумасшедшего кеширования. Таким образом, отключение кэша в сетевых инструментах и ​​явное очищение кеша не работают.

Очень простое, но скучное обходное решение, я просто открываю новую вкладку Incognito. Удивительно, но это работает, все время!

Жесткое обновление в режиме инкогнито делает трюк в любое время, когда я хочу перезагрузить его в том же режиме.

Ответ 16

Как насчет букмарклета, который изменяет имя страницы, чтобы предотвратить кеширование страницы. В Chrome вы создадите новую закладку, а затем вставьте код в URL-адрес. Нажмите закладку, и страница перезагрузится с отметкой времени, чтобы помешать кешу.

javascript:(function(){var idx = location.href.indexOf('?');var d = new Date();var str = location.href.substr(0,idx) + '?version=' + d.getTime();location.href=str; void 0;})();

Ответ 17

Я только что поймал, но не обязательно из-за Chrome.

Я использую jQuery для создания запросов AJAX. У меня был атрибут кеша в true:

   $.ajax({
        type: 'GET',
        cache: true,
        ....

Установка этого параметра в false устраняет проблему, но это не идеально.

Я не знаю, где эти данные сохраняются, но я знаю, что хром никогда не попадал на сервер для запроса.

Ответ 18

Теперь все лучше и быстрее (версия Chrome 59.x.x.):

Щелкните правой кнопкой мыши значок перезагрузки (слева от поля url), и вы получите раскрывающееся меню, выберите третий вариант: "Cache и Hard reload".

Этот параметр доступен только в том случае, если инструменты разработчика открыты. (Обратите внимание на разницу в опции 2: "Жесткая перезагрузка" -cmd-shift-R). Здесь нет опустошения кепки!

Ответ 19

В хромовом веб-магазине доступно хромовое расширение с именем Очистить кеш.

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

Очень приятно!

Вы также можете определить ярлык клавиатуры для этого в настройках!

Еще один способ - запустить ваше хромированное окно в режиме инкогнито. Здесь также должен быть полностью отключен кеш.

Ответ 20

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

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

Снимок экрана - Инспектор размера страницы

Ответ 21

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

<link href="@Url.Content("~/Content/Site.css")[email protected]" rel="stylesheet" />

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

Ответ 22

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

  • Control Shift R,
  • Отключить кеш в F12
  • Управление F5.

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

Ответ 23

Если вы используете ServiceWorkers (например, для прогрессивных веб-приложений), вам, вероятно, потребуется проверить "Обновление при перезагрузке" в разделе "Приложения"> "Работники сервиса" в инструментах разработчика.

enter image description here

Ответ 24

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

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

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

    echo $rand;

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

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

Ответ 25

Я использовал другие параметры, описанные выше, но я считаю, что лучше всего добавить следующий параметр для запуска chrome.exe.

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disk-cache-size = 1 -media-кэша = 1

Я считаю, что не отключать кеш-кеш - хорошая идея, но она здесь для полноты.

В действительности, я хочу, чтобы опция полностью отключила кеш, чтобы использовать память для ввода-вывода вместо моего диска (что также увеличило бы время загрузки в 10 раз!), но я не думаю, что хром или любой браузер, если на то пошло, этот вариант еще.

Ответ 26

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

Ответ 27

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

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

В некоторых браузерах также есть Cache, используемый в сочетании с Рабочие службы, чтобы создать 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()
    }) 
  })

Ответ 28

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

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

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

Ответ 29

Я был в ситуации, когда браузер загружал данные кеша с диска, даже когда я проверял отключенный кеш (я использовал 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

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

Ответ 30

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