Chrome кеширует как бешеный браузер - PullRequest
30 голосов
/ 05 июля 2011

У меня есть веб-сервис, который, как и большинство других, использует файлы js и css. Я использую старый прием добавления номера версии в файл js и css, как; ? v = 123, и это меняется каждый раз, когда мы обновляем сервис на производстве.

Теперь это прекрасно работает во всех браузерах, кроме Chrome. Похоже, что Chrome предпочитает кэшированную версию, а не новую, поэтому игнорирует добавленную переменную. В некоторых случаях принудительного обновления кеша (cmd + r / ctrl + f5) было недостаточно, поэтому мне пришлось перейти к настройкам и очистить кеш для загрузки нового содержимого.

Кто-нибудь испытывал эту проблему с Chrome? И если да, то каково было решение проблемы?

Ответы [ 3 ]

13 голосов
/ 18 июля 2011

Chrome, безусловно, должен обрабатывать запросы с разными строками запросов как разные запросы;кэшированный результат для style.css?v=123 никогда не должен использоваться для style.css?v=124.Если вы видите другое поведение, пожалуйста, отправьте сообщение об ошибке на http://new.crbug.com/ и опубликуйте идентификатор ошибки здесь.* был кеширован дольше, чем вы ожидали.Если бы новая версия самой страницы не была загружена, она все равно запросила бы ?v=123, поскольку HTML-код не изменился бы.Если вы отправляете долгоживущие заголовки кэша со страницей, вполне возможно, что Chrome кэширует ее более агрессивно, чем вы ожидали.Если вы наблюдаете такое поведение, отметьте http://crbug.com/8742 для получения обновлений.

4 голосов
/ 08 сентября 2016

У меня тоже был такой же опыт

Вы можете использовать Ctrl + Shift + R для просмотра без кэша в Chrome + Mozilla.

1 голос
/ 05 января 2012

У меня тоже был этот опыт.

Я управляю сайтом членства, на котором отображается такой контент, как «Вы должны войти в систему в качестве участника уровня Gold, чтобы просмотреть этот контент», если они не вошли в систему или пытаются просмотреть контент, не разрешенный уровнем их членства. Но даже если пользователь вошел в систему, он все равно будет видеть «Вам необходимо войти» из-за агрессивного кэширования в Google Chrome. В Firefox, однако, он работает нормально, когда я тестирую вход и выход из всех 5 уровней членства - каждый отображает соответствующий контент.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...