Как отключить кэш в браузере

Обновлено: 04.07.2024

Я немножко консервативен по натуре. Когда мимо пробегает толпа с криками «как же это круто!» – самое время выпить чашечку чая и лениво отследить траекторию движения.

Потому в свое время долго сидел на браузере Opera – том, что позже назвали Classic. Все еще живы теплые воспоминания про браузер времен медленного нестабильного интернета, когда Опера умела «показывать только кэшированную графику», а также позволяла легко отключать и включать Flash.

Прощание с Opera Classic началось тогда, когда в Яндекс.Браузере появились «оперные» жесты мышью. Это был Chrome, но Хром симпатичный, свой, родной, пушистый.

«И дальше жили они долго и счастливо».


Не всегда долго и счастливо. Скажем, идиотская затея по включению в состав браузера антивируса. «Железной рукой загоним человечество к счастью» и замечательный ответ техподдержки «вы же можете его отключить». Ну да, могу. Впрочем, кто старое помянет… И кто старое забудет…

С другой стороны, реализованы совершенно приятные вещи. Реализация вынесенного видео – как в Опере, но лучше. Возможность без лишних телодвижений устанавливать расширения из магазина Оперы. Жесты – да, жесты! Переводчик – не без странностей, но работает.

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

Через пару-тройку месяцев такого свинства я откровенно устал.

Все приложения, активно эксплуатирующие жесткий диск без моего позволения – вообще раздражают.

В свое время пришлось потратить время на выпиливание всевозможных задач Майкрософт из планировщика (регулярная отправка «телеметрии» в разгар рабочего дня), мало того, что software repository операционки регулярно обновляется с обширным пропилом жесткого диска, антивирус влезает со своим сканированием без спросу – так теперь еще и браузер своевольничает.

Народ говорит, что в Chromium-браузере можно отключить дисковый кэш ключом командой строки --disk-cache-dir=nul, но это не обнадежило — тем более, не могло решить проблему «попила» History.

Решил тряхнуть стариной и вспомнить времена УКНЦ – искать спасение в RAM-диске.

Воспользовался ImDisk'ом, настроил монтаж образа RAM-диска (объемом 1 Гб) при входе в систему и регулярное сохранение содержимого диска в образ (одного раза в два часа оказалось достаточно).
Прописал в ярлыке запуска ключ командной строки browser.exe --user-data-dir=«RAMdrive:\User Data».

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

Хорошо, пробежимся по реестру и пропишем ключ --user-data-dir. Прописать придется не в одном и не в трех местах – для Яндекс.Браузера таких мест однозначно больше. Больше, чем в Хроме. Устав перебирать, прописал везде, где нашел — в двадцати местах.

Но после очередного обновления Браузера – установщик затрет значения на дефолтные.

Оказалось проще создать символьную ссылку для каталога RAMdrive:\User Data, чтобы браузер видел содержимое RAM-диска там, где профиль размещается по умолчанию –%userprofile%\AppData\Local\Yandex\YandexBrowser\User Data.

Итак, что мы имеем общего для Яндекс.Браузера и Google Chrome:

1. Нельзя выбрать путь для установки.
2. Нельзя настроить расположение профиля пользователя в установках.
3. Нет документированной возможности отключения дискового кэша.

Это тянется год за годом — и, похоже, разработчики не собираются идти навстречу редким воплям. Кушайте, что дают.

Чем отличается в худшую сторону Яндекс.Браузер от Google Chrome в моем ограниченном опыте? Интенсивнее работает с жестким диском. Правда, Chrome я использую гораздо реже, на меньшем количестве сайтов. Но никогда не замечал за Хромом скрытых процессов, занимающихся чем-то после закрытия программы.

В результате манипуляций жить с Яндекс.Браузером стало лучше, веселее.

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

Господа, это не народно.

И скажите, что же вы там делаете после закрытия Браузера, и почему именно этот момент запуска выбран самым подходящим?

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

Поэтому, многие пользователи задаются вопросом, а можно ли отключить кэш в Гугл Хром? Далее в инструкции я постараюсь дать четкое разъяснение, и продемонстрировать некоторые возможные способы по отключению кэша в Google Chrome.

На компьютере


Сразу стоит сказать, что в самом браузере нет такой кнопки, которая бы позволила навсегда отключить сохранение кэш данных. Поэтому, есть несколько методов, позволяющих избавиться от накопления кэш сведений – постоянная очистка скопившихся данных, использование специального режима «Инкогнито» в Google Chrome, а так же несколько других хитростей.

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

О втором способе поговорим более подробно. В Гугл Хром есть специальный режим, благодаря которому приостанавливается сохранение кэш данных. Поэтому, если вы будете постоянно использовать режим «Инкогнито», то ваш персональный компьютер не будет захламляться лишней для вас информацией. Чтобы его активировать на полной версии браузера Google Chrome, вам потребуется выполнить такие действия:

  1. Открываем Гугл Хром на любой странице. Находим значок в виде трех точек, который располагается в правой верхней части вкладки, и нажимаем прямо по нему левой клавишей мышки.
  2. Указанное выше действие позволит вам вызвать основное меню браузера Google Chrome. Среди представленных строчек находите пункт «Открыть окно в режиме инкогнито» и щелкаете по нему левой клавишей мышки.
  3. Вот, собственно, и все. Всего лишь за несколько кликов мышки вы сможете открыть вкладку в специальном режиме «Инкогнито». Обратите внимание, что открывать страницу такого типа можно и сочетанием клавиш. Для этого потребуется одновременно нажать на три клавиши – «Ctrl» + «Shift» + «N».
  4. На скриншоте ниже вы можете увидеть перечень того, что не будет сохраняться. Если говорить кратко, то история браузера, файлы cookie , данные сайтов (кэш) и сведения, которые вы указываете в формах, больше не будут сохраняться.


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

  1. Открываем браузер Гугл Хром на персональном компьютере. Нажимаем клавишу «F12». Это нужно для того чтобы открыть меню разработчика. Изначально раздел откроется на вкладке «Elements». Он вам не подходит. Найдите на главной панели с разделами пункт «Network» и нажмите прямо по нему левой клавишей мышки.
  2. Затем, прямо под строкой «Network» будет располагаться графа «Disable cache». Именно она вам и нужна. Клацните один раз по ней левой клавишей мыши.
  3. Вот, собственно, и все. По идее, кэш в браузере Google Chrome теперь не должен сохраняться. Но этот способ сложно назвать надежным.

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


Обратите внимание, что предложенные способы актуальны только для персонального компьютера с операционной системой Windows. На Linux или MacOS наврятли получится отключить сохранение кэш данных так, как было рассказано выше. На просторах интернета вы можете увидеть ещё больше способов для отключения кэша в Гугл Хром, однако в инструкции выше были рассмотрены самые актуальные и действенные методы из всех возможных.

На телефоне

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


Поэтому, у пользователя есть выбор – использовать режим «Инкогнито», или через определенный промежуток времени самостоятельно производить удаление кэш данных.

Если у вас нет желания вручную удалять кэш браузера Google Chrome, то вы можете постоянно использовать режим «инкогнито». Ниже вы узнаете, как отключить кэш в Гугл Хром на устройстве с операционной системой Android или IOS.

Чтобы воспользоваться режимом «Инкогнито» в браузере Google Chrome, вам понадобится выполнить на своем гаджете с ОС Android или IOS следующие действия:

  1. Запускаем на мобильном устройстве браузер Гугл Хром. Нажимаем один раз по иконке в виде трех точек, которая располагается в верхней правой части любой страницы.
  2. Как только вы это сделаете, на действующей вкладке появится меню браузера. В верхней части данного меню должна быть графа «Новая вкладка инкогнито». Именно по ней и потребуется щелкнуть один разок.
  3. Готово! Благодаря предложенному выше порядку действий, вы сможете открыть вкладку Гугл Хром в режиме «Инкогнито». Таким образом, вы остановите сохранение истории браузера, файлов cookie, кэш данных и сведений, которые вводятся при заполнении каких-либо форм.



Подробнее о режиме инкогнито читайте с этой статье: Режим инкогнито в Google Chrome на телефоне

Теперь вы знаете, что администрация браузера не позаботилось о том, чтобы пользователь мог в любое время прекратить сохранение кэша в Гугл Хром. Но, тем не менее, выше вы смогли узнать способ, позволяющий временно отключить кэш в Гугл Хром. Безусловно, вы можете использовать режим «инкогнито» каждый раз, когда заходите в браузер. В таком случае, кэш данные никогда не будут появляться на вашем устройстве.

delphinpro

Стандартный путь решения проблемы — версионирование файлов.
Об этом уже написали в ответах.

Варианты: использовать временную метку, использовать хеш файла. Примеры на php:

delphinpro

Во время разработки, когда файл постоянно правится, кэш просто напросто отключается в браузере

5a3bea1cb6266680708982.jpg

Эту галочку можно оставить включённой насовсем. Отключение таким образом кэша работает только при открытой консоли.

Сергей, вставил это в конец html документа, но с css что делать?

delphinpro

Сергей, script src="https://qna.habr.com/q/main.js?v1">/script вставил в конец css - никаких изменений

delphinpro

ne_pes, какой нафиг скрипт.

delphinpro

ne_pes, поясняю.
Чтобы заставить браузер всегда загружать обновлённый файл, проще всего менять URL к этому файлу. Но не будем же мы каждый раз перемещать/переименовывать файл? Нет. Мы просто изменим параметр в URL. Адрес будет новым, браузер файл загрузит


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

styles.css?v=<?php echo time() ?>
Более адекватный вариант — отслеживать изменения в файле. Можно по метке последнего изменения файла из файловой системы

styles.css?v=<?php echo filemtime('styles.css') ?>
или по хешу содержимого файла

styles.css?v=<?php echo md5_file('styles.css') ?>
Принцип понятен?

Пишите в конец файла какой-нибудь параметр:

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

Довольно подробное и интересное изложение материала, касающегося кэша и его использования. Часть 2.

Существует две основные причины, по которым используется веб-кэш:

1. Уменьшение времени ожидания — так как данные по запросу берутся из кэша (который располагается “ближе” к клиенту), требуется меньше времени для получения и отображения контента на стороне клиента. Это делает Веб более отзывчивым (прим. переводчика — “отзывчивым” в контексте быстроты реакции на запрос, а не эмоционально).

2. Снижение сетевого трафика — повторное использование контента снижает объем данных, передаваемых клиенту. Это, в свою очередь, экономит деньги, если клиент платит за трафик, и сохраняет низкими и более гибкими требования к пропускной способности канала.

Виды веб-кэшей

Кэш браузера (Browser cache)

Если вы изучите окно настроек любого современного веб-браузера (например, Internet Explorer, Safari или Mozilla), вы, вероятно, заметите параметр настройки «Кэш». Эта опция позволяет выделить область жесткого диска на вашем компьютере для хранения просмотренного ранее контента. Кэш браузера работает согласно довольно простым правилам. Он просто проверяет являются ли данные “свежими”, обычно один раз за сессию (то есть, один раз в текущем сеансе браузера).

Прокси-кэш (Proxy cache)

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

Поскольку прокси не являются частью клиента или исходного сервера, но при этом обращены в сеть, запросы должны быть к ним как-то переадресованы. Одним из способов является использование настроек браузера для того, чтобы вручную указать ему к какому прокси обращаться; другой способ — использование перехвата (interception proxy). В этом случае прокси обрабатывают веб-запросы, перенаправленные к ним сетью, так, что клиенту нет нужды настраивать их или даже знать об их существовании.

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

Кэш-шлюз (Gateway Cache)

Также известные как “реверсивные прокси-кэши” (reverse proxy cache) или “суррогаты” (surrogate cache) шлюзы тоже являются посредниками, но вместо того, чтобы использоваться системными администраторами для сохранения пропускной способности канала, они (шлюзы) обычно используются веб-мастерами для того, чтобы сделать их сайты более масштабируемыми, надежными и эффективными.

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

Сети доставки контента (content delivery networks, CDN) распространяют шлюзы по всему интернету (или некоторой его части) и отдают кэшированный контент заинтересованным веб-сайтам. Speedera и Akamai являются примерами CDN.

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

Почему я должен им пользоваться

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

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

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

С другой стороны, если вы ответственно подходите к проектированию вашего веб-сайта, кэш может помочь с более быстрой загрузкой и сохранением нагрузки на сервер и интернет-соединение в рамках допустимого. Разница может быть впечатляющей: загрузка сайта, не работающего с кэшем, может потребовать нескольких секунд; в то время как преимущества использования кэширования могут сделать её кажущейся мгновенной. Пользователи по достоинству оценят малое время загрузки сайта и, возможно, будут посещать его чаще.

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

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

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

Как работает веб-кэш

Вообще говоря, это самые общие правила (не волнуйтесь, если вы не понимаете детали, они будут объяснены ниже):

Свежесть (freshness) и валидация (validation) являются наиболее важными способами, с помощью которых кэш работает с контентом. Свежий контент будет доступен мгновенно из кэша; валидное же содержимое избежит повторной отправки всех пакетов, если оно не было изменено.

Читайте также: