Як змусити оновити без кешу в Google Chrome? [дублікат]


307

На це питання вже є відповідь тут:

Чи Chrome має еквівалент оновлення Ctrl + F5 Firefox? Я не можу знайти його.

Я змінив свій граватар минулої ночі, і я можу побачити новий у Firefox після оновлення Ctrl + F5, але Chrome, здається, вперто звисає до старого Gravatar. Я думаю, я міг би вручну очистити кеш, але якщо для цього є команда клавіатури, я хотів би знати, що це таке (оскільки це було б корисно і для веб-розробки).


18
CTR + R, потім CTRL + F5, один або два рази - зазвичай вирішує проблему. Або вимкніть кеш в Інструментах для розробників -> Sprog (botom right) -> Мережа - Вимкнути кеш .. Перезавантажте сторінку та спробуйте вимкнути її.
Пьотр Кула

1
Чудова нова функція додана до Chrome для примусового оновлення - superuser.com/a/512833/92862
Coops

Відповіді:


197

Документація Chrome зазначає, що Ctrl+ F5або Shift+ F5має робити "Перезавантажувати поточну сторінку, ігноруючи кешований вміст".

Якщо він не працює, ви можете подати звіт про помилку , але, схоже, у багатьох інших людей виникає така ж проблема.

[Існуючий журнал помилок у цій проблемі] Закрито як копія, проблема залишається:

[ Випуск: 94090 ]


1
Схоже, це може бути частково виною Граватара. У заголовку мого зображення вони надсилають Last-Modified: Fri, 20 Jun 2008 12:25:23 GMT. Я думаю, що це або дата, коли я завантажив старого Gravatar, або дата, коли я зареєструвався в Gravatar. Веб-переглядач повинен бачити це і думати: "о, цей новий файл має ту саму дату останньої модифікації, тому я просто ще використовуватиму кешований файл". Це помилка, якщо Chrome робить це в кеш-файлі оновлення, але Gravatar помилка також надсилає неправильну останню модифікацію. Я зв’язався з обома сторонами. :)
Кіп

4
Я завантажую сценарії асинхронно з javascript, і Chrome, здається, продовжує використовувати кешовані версії навіть після ctrl-f5 тощо. Очищення кеша працює. Але іншим рішенням є відкриття вікна анонімного перегляду (ctrl-shift-n), оскільки він буде в режимі інкогніто не використовувати кеш.
Таурен

3
Haha Chrome - це кеш-пам'ять, єдиний спосіб перемогти його - це натиснути Shift + F5 принаймні два рази (справді).
Халіл Озгюр

1
Команда Chrome повинна бути збентежена, коли така помилка сидить у черзі помилок більше 2 років. Я дуже розчарований.
Брайан Вебстер

2
Однозначно не працює. Chrome може іноді так погано смоктати.
іконоборство

200

У відкритих інструментах для розробників ( Ctrl+ Shft+ Iабо + + I):

  1. Виберіть вкладку Мережа
  2. Активуйте прапорець Відключити кеш - пам'ять .
  3. НЕ ЗАКРИТИ Інструменти для розробників - інакше кеш буде ввімкнено знову.

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


Не працює для мене, довелося використовувати інкогніто.
Антоні Стаббс

4
Але чому немає короткого клавіші, щоб це спровокувати!
Чашки

7
Зверніть увагу, що кеш вимкнено лише тоді, коли відкриті Інструменти для розробників. Якщо ви закриєте його, кеш буде знову активним.
Icode4food

Навіть із активованим прапорцем Вимкнути кеш-пам'ять та відкритими інструментами для розробників все ще існує різниця між F5 та Shift + F5. Виклик Ajax на моїй веб-сторінці поводиться по-різному, залежно від виду оновлення, і я ще не розумію, чому.
Стефан

3
У нових інструментах для розробників (може бути запущений і через F12) налаштування "Вимкнути кеш" можна знайти на вкладці Мережа.
анре

98

Для Mac це Shift + Command + R або утримування Shift, натиснувши кнопку перезавантаження (на відміну від Command + R або звичайне натискання для звичайного оновлення).

Ще кілька деталей:

Для Shift + Command + R кеш просто ігнорується, а ресурси запитуються так, як не було кешу.

Для Command + R Chrome надсилає If-Modified-Sinceабо Etagнадсилає запити на веб-сервер навіть для речей, які фактично кешовані . Більшість, якщо не всі, вміст, на який сервер повинен відповідати 304 Not Modified. Це справедливо для більшості, якщо не всіх сучасних браузерів.

Єдиним способом змусити покладатися на кеш (без браузера навіть не вимагати можливих змін), здається, це натиснути посилання на веб-сторінці, або перейшовши за посиланням закладок, або зайти в рядок URL-адреси та натиснути Повернутися туди ( Команда + L, повернення).

Однак: давно відома проблема в Chrome, Chrome Forced Refresh не ігнорує кеш (і новіша Reload / Refresh не оновлюється ), або, можливо, фактично функція в WebKit, динамічно вставлені субресурси не скасовуються, навіть якщо документ, що містить Reloaded , робить Chrome не очищати ВСЕ пов'язані кеші при використанні вищезазначених методів. Розробник Chromium пояснює :

На вкладці мережі інструментів для розробників відображається водоспад усіх ресурсів під час їх завантаження. Праворуч є дві вертикальні лінії ... на одній з них під наведенням курсирується напис "Подія завантаження запущена". Будь-яке завантаження після цього пункту офіційно не є частиною сторінки (сторінка може надсилати запити годинами) [...], тому НЕ буде "оновлена" будь-якою комбінацією f5. Це за дизайном.
[...]
Кешування [будь-якого ресурсу, до та після рядка "Завантажена подія завантаження"] визначається заголовками HTTP відповіді, а не часом видання запиту.

Також зверніть увагу на твіт @ ChromiumDev :

Відключений кеш DevTools Chrome недійсний кеш диска (чудово підходить для розробки!), Але .. лише тоді, коли видно devtools.


Дякую за чудову детальну відповідь. Можливо, занадто технічний для аудиторії, але я дуже ціную це.
sholsinger

Command-Shift-R не працює в поточній стабільній версії Chrome.
Олів'є

Схоже, це добре працює на моєму Mac, @olouv. Ви зазирнули на вкладку Мережа інструмента розробника? (Правда, на цьому самому сайті є кілька ресурсів, для яких Chrome все ще надсилає If-Modified-Sinceзапит, але ці ресурси запитуються JavaScript, а не парсер HTML. Також кешування самої сторінки встановлюється лише на одну хвилину, можливо, невеликі розбіжності у часі сервера та місцевому часі можуть також зіпсуватись?)
Arjan

ПОПЕРЕДЖАЙТЕ , зверніть увагу на дворічну, але все ще поточну помилку в Chrome: Chrome Forced Refresh не ігнорує кеш .
Ар'ян

22
  1. Підтягніть консоль
  2. Клацніть праворуч внизу, щоб значок зубця
  3. Поставте галочку [Загальне> Вимкнути кеш-пам'ять]
  4. Перезавантажити сторінку (проте)!
  5. Тримайте інструменти для розробників відкритими (ОНОВЛЕННЯ)



Чудово, насправді навіть після того, як я закрив devtool, він завжди очищає кеш.
диїзм

15

Питання трохи старе, але в останній версії Chrome

  • Відкрити з Developer toolsдопомогою F12або Ctrl+ Shift+I
  • Клацніть правою кнопкою миші кнопку «Оновити» та виберіть « Порожній кеш-пам'ять» та «Перезавантажити жорстке»

Це дозволить обійти кеш і повністю завантажити сторінку.

Doc каже Ctrl+ F5або Shift+, F5але, на жаль, на сьогодні помилка все ще не вирішена :-(


1
Як осторонь: це лише Windows. (І я читав, що доступний лише тоді, коли відкриті інструменти для розробників?)
Ар'ян

2
Працює лише тоді, коли Інструменти для розробників відкриті, як ви кажете, Arjan.
mgkrebbs

Ви також можете утримувати SHIFT під час натискання кнопки оновлення
Bolli

9

У мене на сервері є файли (зображення та повні HTML-сторінки), які оновлюються, і жодна комбінація клавіш у хромі, здається, не змушує їх отримувати.

Я покладаюся на режим анонімного хромування - CTRL-SHIFT-N - коли мені потрібно змусити оновитись.

Зауважте, що CTRL-R або CTRL-F5 під час анонімного вікна теж не працює. Ви повинні закрити та повторно відкрити вікно анонімного перегляду - отже, я покладаюся на скорочення клавіш - CTRL-W для закриття, CTRL-SHIFT-N на повторне відкриття.


Ви маєте на увазі "повторно відкрити вкладку анонімного перегляду", а не вікно, я думаю?
мгол

1
Цікаво, що для мене CTRL-SHIFT-N відкриває нове вікно, а не лише вкладку - це не завжди так?
Даніель Гілл

6

Однозначно не існує простого способу зробити це в Chrome, як і інші браузери. У документації може бути сказано, що CTRL + F5 або SHIFT + F5 повинні перезавантажувати та ігнорувати кеш, але це просто не відбувається. У мене є флеш-слайд-шоу, яке зберігає налаштування / конфігурацію у .xml-файлі, і після оновлення XML-файлу Chrome все ще завантажить кешовану версію, якщо я не очищую кеш-пам'ять. Мені завжди доводиться запускати інший веб-переглядач під час оновлення слайд-шоу, тому мені не доведеться весь час очищати кеш-пам'ять Chrome.


5
Flash кеш - це щось зовсім інше, ніж Chrome.
Джошуа

@Joshua Якщо це не зазначається, він працює в інших браузерах, але не в Chrome. Не забувайте Chrome поставляється зі своєю власною збірки Flash - плеєра.
Каміло Мартін

@CamiloMartin ... який також має свій окремий кеш. Зачекайте ... Ви серйозно відповіли на повідомлення, якому більше 2 років? Тьфу. Я взяв приманку.
Джошуа

@Joshua О, ти маєш рацію, я не зрозумів :)
Camilo Martin

4

Ctrl - Shift - Видалення дозволить видалити кеш за попередню годину. Це запевнить, що наступного разу, коли ви перезавантажите сайт, він буде новий.


4

Безумовно, помилка в Chrome - це також зображення, які слід змінити, але він замість цього використовує старе зображення, навіть після неодноразового натискання Ctrl+ F5.

Я намагався змінити логотип Google Apps, але єдиний спосіб, який він змінитиме в Gmail, це якщо я використовую режим анонімного перегляду або очищую весь кеш. Ctrl+ F5зберігає старий логотип.


3

Я зробив це: Клацніть правою кнопкою миші FRAME (це не синхронізується), і SHIFT натиснув на опцію "Reload Frame". Потім кадр належним чином оновився.


Не працювало для мене
Купс

3

Щоб очистити чітко вказаний кеш додатків, що переходить chrome://appcache-internals/на хром, та видалити кеш для певних веб-сайтів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.