Как отключить кеш в опере
Обновлено: 20.11.2024
Я пытаюсь заставить Opera 11.61 перезагружать страницу без использования кеша. До сих пор я пробовал Shift-щелчок по кнопке перезагрузки, Ctrl-R, Shift-R, F5. Ни один из них не работает. Единственный способ выполнить перезагрузку без кеша, который я нашел, — это открыть Opera Dragonfly (инструменты разработчика Opera), открыть вкладку «Сеть» и выбрать «Отключить все кэширование» в разделе «Параметры сети». Что я делаю не так?
3 ответа 3
Обновите Opera до версии 11.62, выпущенной день назад. Из журнала изменений:
Используйте один из следующих способов:
Удерживая нажатой клавишу Ctrl, нажмите клавишу F5.
Удерживая нажатой клавишу ⇧ Shift, нажмите клавишу F5.
Удерживая нажатой клавишу Ctrl, нажмите кнопку "Обновить" на панели навигации.
Удерживая нажатой клавишу ⇧ Shift, нажмите кнопку «Обновить» на панели инструментов навигации.
Используйте один из следующих способов:
Удерживая нажатой клавишу Ctrl, нажмите клавишу F5.
Удерживая нажатой клавишу Ctrl, нажмите кнопку "Обновить" на панели инструментов.
В Windows используйте один из следующих способов:
Удерживая нажатой клавишу Ctrl, нажмите клавишу F5.
Удерживая нажатой клавишу ⇧ Shift, нажмите клавишу F5.
Удерживая нажатой клавишу Ctrl, нажмите кнопку "Обновить" на панели навигации.
Удерживая нажатой клавишу ⇧ Shift, нажмите кнопку «Обновить» на панели инструментов навигации.
В Mac OS X:
Удерживая клавиши ⌘ Cmd и ⇧ Shift, нажмите клавишу R.
В Linux:
Удерживая нажатой клавишу Ctrl, нажмите клавишу F5.
Эти инструкции подходят для Firefox, SeaMonkey и других подобных браузеров.
В Windows и Linux используйте один из следующих способов:
Удерживая клавиши Ctrl и ⇧ Shift, нажмите R .
Удерживая нажатой клавишу ⇧ Shift, нажмите кнопку «Обновить» на панели инструментов навигации.
Удерживая нажатой клавишу Ctrl, нажмите клавишу F5.
В Mac OS X используйте один из следующих способов:
Удерживая клавиши ⌘ Cmd и ⇧ Shift, нажмите R .
Удерживая нажатой клавишу ⇧ Shift, нажмите кнопку «Обновить» на панели инструментов навигации.
Для версии 4 и новее:
Удерживая нажатой клавишу ⇧ Shift, нажмите кнопку «Обновить панель инструментов».
Для версии 3 и старше:
Удерживая нажатой клавишу ⌘ Cmd, нажмите R . Такая "обычная" перезагрузка обычно обходит кеш.
Обратите внимание, что Apple утверждает, что нажатие кнопки «Обновить» на панели инструментов имеет тот же эффект, что и ⌘ Cmd + R , но это не так; часто кнопка не обходит кеш.
Нажмите F5 или нажмите кнопку "Обновить" на панели инструментов.
Это довольно тщательно. Я бы предложил переместить Opera наверх из-за того, что вопрос спрашивает, как это сделать только в Opera.
Как принудительно обновить одну страницу
Прежде чем вы приступите к очистке всего кеша браузера, вы можете попробовать одну хитрость, которая называется "принудительное обновление". Обычно, когда вы обновляете страницу, ваш браузер по-прежнему обслуживает кешированную версию страницы, а не загружает все ресурсы снова. Но на самом деле вы можете обойти кеш и принудительно выполнить полное обновление, используя несколько простых горячих клавиш:
Браузеры Windows и Linux: CTRL + F5
Apple Safari: SHIFT + кнопка «Обновить» на панели инструментов Chrome и Firefox для Mac: CMD + SHIFT + R
Опять же, этот метод обходит кеш только для конкретной страницы, на которой вы находитесь. Он оставляет остальную часть кеша вашего браузера нетронутой. Поэтому этот вариант отлично подходит, если у вас возникают проблемы только с одной страницей. Но если вы хотите полностью сбросить настройки (скажем, для всего сайта), лучше просто очистить кеш браузера.
Я пытаюсь заставить Opera каждый раз повторно запрашивать страницу, а не просто обслуживать ее из кеша. Я отправляю заголовки ответа «Cache-control: no-cache» и «Pragma: no-cache», но кажется, что Opera просто игнорирует эти заголовки. Он отлично работает в других браузерах - Chrome, IE, Firefox.
Как запретить Opera кэшировать страницы? Я хочу, чтобы Opera повторно запрашивала страницу, когда пользователь нажимает кнопку «Назад» в браузере.
4 ответа 4
Как пользователь, я абсолютно ненавижу страницы, которые замедляют мою навигацию по истории, вызывая повторную загрузку, когда я использую кнопку "Назад". (Если бы браузер, который вы используете ежедневно, обращал внимание на различные директивы кэширования и позволял им влиять на навигацию по истории так, как вы, как разработчик, хотели бы, вы, вероятно, сами заметили бы, что некоторые сайты замедляются.)
Если у вас есть очень сильный вариант использования для этого, я бы сказал, что ваша архитектура может быть в некотором смысле «неправильной», например, если вы переключаетесь между разными «представлениями» постоянно обновляемых данных и, таким образом, хотите обеспечить повторную загрузку, когда пользователи возвращаются, возможно, лучше использовать методы Ajaxy для загрузки постоянно меняющихся данных на текущую страницу?
Реализация Opera преднамеренна: «кэширование» концептуально отличается от «навигации по истории», первое больше связано с хранением данных на диске и между сеансами, второе — с переключением обратно на временно скрытую страницу, которую вы только что посетили, в том состоянии, в котором вы его оставили.
"Эта функция запрошена банками-параноиками и предназначена для них. Она замедляет работу слишком многих обычных сайтов, если применяется по http". Вы говорите, что браузеры не следует использовать для приложений, которые могут иметь конфиденциальные данные? :-)
Если данные действительно конфиденциальны, сайты должны использовать https. :-) Здесь есть дыра в веб-спецификации, так как нет концепции "сеансов", разделяемых между сервером и браузером. Если бы сервер мог сообщить браузеру, что «пользователь только что вышел из системы/время ожидания истекло, и мы закрыли ее сеанс, пожалуйста, запретите использование кнопки «Назад», чтобы просмотреть историю с момента начала сеанса», мы смогли бы найти лучший баланс между удобством использования и безопасностью. .
Я согласен с обоими пунктами: (i) в веб-спецификации есть дыра в отношении «общего состояния сеанса» и (ii) https следует использовать для действительно конфиденциальных данных. Но «действительно конфиденциальные данные» — это показатель того, что безопасность данных — это не цифровая, а аналоговая мера. Другие браузеры поддерживают это, не допуская работы кеша и обязательной повторной проверки, что дает дополнительные возможности в управлении безопасностью/конфиденциальностью. Opera не поддерживает это - правильно это или неправильно, меня это не волнует. Мне нужно решение, чтобы обойти это несоответствие. Ты работаешь в Опере, что можешь посоветовать? (например, скрипт, заголовок и т. д.) Спасибо
Для меня это не работало в последней версии Opera. Приходилось нажимать CTRL+F5, я регенерирую html только раз в неделю, но тогда он должен отображать последний контент.
Похоже, ваша проблема связана с этим ответом. После тестирования вашего заголовка и предложенных заголовков я смог воспроизвести ожидаемое вами поведение только в Internet Explorer.
Я неоднократно воспроизводил эту проблему в Opera. Кажется, это единственный несовместимый браузер. Я читал об их строгом, принципиальном подходе к кэшированию. Но это практически просто похоже на дыру в безопасности без дополнительной работы. Мне бы очень хотелось получить явное решение, которое можно было бы реализовать и для вопросов nishkarr. Заголовки ответов управления кешем заголовков не работают в опере, как в других браузерах. Какие обходные пути?
ПРОСТОЕ УПРАВЛЕНИЕ КЭШЕМ НА СЕРВЕРЕ БЕЗ ЗАГОЛОВКОВ ИЛИ ВНЕШНИХ СЦЕНАРИЙ
Нулевая зависимость, универсальная языковая версия
Вы можете вызвать глобальное повторное кэширование без использования заголовка, добавив к имени файла контрольную сумму md5 или sha1.
Таким образом, в случае точного совпадения он будет кэшироваться, а в противном случае рассматриваться как новый ресурс.
- Работает во всех браузерах
- Проверяется как строгий HTML5 (изначально не проверялся, но это было обновлено. Не проверено на XHTML, но, вероятно, не подходит для этого)
- Не требует дополнительных заголовков
- Сохраняет четкое разделение задач внешнего интерфейса и внутренних задач.
- Не требует проверки работоспособности на стороне клиента или проверки источника.
- Все, что может печатать HTML, может делать это последовательно, включая статический контент.
- Если он не статический, легко распространить управление во время выполнения на конечных пользователей (с проверкой подлинности, если необходимо), что позволяет использовать простые флаги страниц для определения возвращаемого исходного кода в минимизированном, преттифицированном или отладочном виде.
- Полностью инкапсулирует управление кешем клиента в механизме обслуживания контента, что упрощает обслуживание.
В качестве дополнительной возможности автоматически вводится кэширование на стороне клиента с контролем версий за счет использования контрольных сумм, кэшированных браузером, что может быть полезно, если у вас есть альтернативные версии и вам нужно выполнить модульное тестирование пакета выпуска, чтобы определить его минимальные стабильные версии зависимостей или что-то в этом роде.
Вам больше не нужно возиться с браузером, чтобы кэширование больше не мешало процессу разработки.
Этот подход также можно использовать для версий изображений, видео, аудио, PDF-файлов и т. д. Практически любой ресурс, который используется в виде статических данных, будет работать аналогичным образом, кэшироваться при первом запросе контента и сохраняться автоматически без дальнейшего рассмотрения. если файл не изменяется.
Это допустимая разметка RFC. Обратите внимание, что теги script и link имеют строку получения:
Строка GET ?checksum=ba411cafee2f0f702572369da0b765e2 относится к хешу MD5 или SHA1 размера файла ресурса. Его можно получить через командную строку, языковую конструкцию или путем хэширования из значения заголовка Content-Length:. Затем вы создаете свой атрибут href или src, добавляя его в виде строки GET к имени файла.
Этот браузер интерпретирует их как разные и кэширует отдельно.
Сервер будет игнорировать параметр GET, если это статический ресурс, но если он обслуживается динамически, параметр GET будет доступен языку интерпретации.
Это означает, что всякий раз, когда этот хэш изменяется в ссылках, браузер независимо кэширует эту конкретную версию один раз, а затем сохраняет ее до тех пор, пока она не исчезнет навсегда или до истечения срока действия, в зависимости от того, что наступит раньше.
Поскольку контрольная сумма является прямым отражением размера файла, вы можете установить Expires: на навсегда, и это не имеет большого значения. Вы по-прежнему увидите свои изменения сразу же, как только этот файл изменит хотя бы один байт.
Создайте исходный код css или js с помощью обычных утилит.
Запустите контрольную сумму md5 или sha1 для файла во время выполнения, если вы обслуживаете динамически, и во время компиляции, если вы создаете статическое содержимое (например, документы ApiGen).
Представить обычный файл с хэшем в виде строки GET, добавленной к имени файла (например, styles.css становится styles.css?checksum=ba411cafee2f0f702572369da0b765e2 )
Любое изменение в файле приводит к повторному кэшированию, что означает, что вы сразу видите реальное значение.
Необязательно, но здорово: дополнительное преимущество этого подхода заключается в том, что вы можете легко установить флаг GET для разработчиков, который заставит ВСЕ исходные коды веб-интерфейса разрешать исходные коды с предварительными настройками с включенными любыми вашими собственными пользовательскими функциями отладки или использовать их. для интерпретации флагов управления версиями. Вы можете выполнить избыточную проверку, чтобы убедиться, что флаг передается сервером только с известного IP-адреса разработки, прокси-аутентификации и т. д., а в противном случае не соблюдается, если вам это нужно в безопасности. Я обычно делю исходный код внешнего интерфейса, когда это возможно, примерно так:
- Вот что он сейчас делает в прямом эфире (уменьшенное производство, кеширование, по умолчанию, ?checksum=ba411cafee2f0f702572369da0b765e2).
- Это то, что он должен делать в прямом эфире прямо сейчас, достаточно предварительно подготовленный, чтобы я мог его прочитать (предварительно подготовленный продукт, никогда не кешируемый, ?debug_pretty_source=true ).
- Это то, что я использую, чтобы выяснить, что не делает того, что должно делать в реальном времени, если оно существует в обоих предыдущих (предварительно с включенной отладкой, никогда не кэшируется, разрешен ACL/белый список, ?debug_dev_enable=true или аналогичный).
Вы можете применить тот же принцип к выпускам пакетов, используя номера версий вместо контрольных сумм, при условии, что ваши версии не меняются. Контрольные суммы менее удобочитаемы, но их легче автоматизировать и синхронизировать с точными изменениями, но суффиксы версий также полезны для проверки стабильности пакета, если номер версии отражает неизменяемый ресурс.
в частности, я работаю над веб-сайтом и просматриваю его в Opera. Веб-сайт находится на «localhost» моего компьютера. Проблема в том, что Opera продолжает кэшировать файлы css и прочее, поэтому, когда я делаю изменение css, я продолжаю путаться, потому что он использует старый файл css..
я попытался щелкнуть правой кнопкой мыши->редактировать настройки сайта->сеть->использовать кеш приложения и установить для него значение нет.. но он все равно кэширует файл css..
редактировать: я также открыл стрекозу и нашел опцию в сети, которая гласила: «отключить все кэширование, когда стрекоза работает». но, похоже, это не работает, и когда я закрываю и снова открываю стрекозу, настройка снова снимается..
Используйте для этого приватную вкладку. Если вы хотите удалить его кеш, просто закройте все приватные вкладки и откройте новую.
В отличие от Firefox, Ctrl + F5 не перезагружает все заново в Opera. Это пожелание как для пользователей, так и для разработчиков Opera.
Вместо этого вам нужно перейти "Ctrl + F12 -> дополнительно -> история" и очистить кеш или сделать это с помощью параметров в "Меню -> настройки -> удалить личные данные". Но иногда и это не помогает, и приходится также перезапускать Opera. (Или вы можете установить «Меню -> Настройки -> Работа в автономном режиме», а затем отменить выбор, чтобы посмотреть, поможет ли это.)
Opera также известна тем, что требует перезагрузки после перезапуска локального веб-сервера. В противном случае страница будет недоступна.
Вы также можете временно установить для параметров "Проверять документы" и "Проверять изображения" значение "Всегда" в разделе "Ctrl + F12 -> Дополнительно -> История". Для него нет предпочтения сайта. Вы также можете попробовать временно отключить кэш диска и памяти.
Если это действительно веб-сервер на локальном хосте, попробуйте подключиться к нему через 127.0.0.1, вдруг это поможет.
Еще один способ – оставить файл css открытым на вкладке в Opera и постоянно нажимать кнопку перезагрузки.
Вы также можете временно заставить сервер отправлять заголовки программы без кеша (либо через http, либо как метаданные в разметке). Вы также можете отправить заголовок управления кешем с директивами "no-cache" и "must-revalidate".
В этой статье показано, как отключить кеш браузера на вашем Mac. Включает Firefox, Chrome, Edge и Brave.
Если вы видели одну из моих недавних статей о записи избыточных данных на внутренний SSD на компьютерах Mac, то знаете, что я обнаружил одного из главных виновников. Это, конечно же, кэширование записи на диск в сторонних браузерах, таких как Firefox, Chrome и Edge.
К счастью, отключить кеш браузера в стороннем браузере довольно просто.
Хотя эта функция технически не связана с проблемами подкачки памяти, которые мы наблюдали, есть свидетельства того, что чрезмерное кэширование записи на диск в сторонних браузерах может привести к более раннему, чем ожидалось, сбою внутреннего SSD вашего Mac.
В некоторых случаях эти кеши браузера записывали несколько сотен гигабайт данных каждый час на мой внутренний SSD.
Safari и Firefox с отключенным кешем записывают очень мало данных.
Важно отметить, что чрезмерное кеширование диска в браузере действительно является проблемой только в том случае, если вы смотрите или транслируете МНОГО видеоконтента. Когда я говорю много, я имею в виду часы каждый день. Для обычного использования вам, вероятно, не нужно выполнять эти действия.
Для потокового видеоконтента или Youtube в примере, который я упоминал в своей предыдущей статье, эти процессы кэширования фактически записывают и буферизуют видео на ваш внутренний SSD. Это делается вместо оперативной памяти, чтобы обеспечить плавное воспроизведение в случае проблем с оперативной памятью, Интернетом или системой. Это нормальная функция многих браузеров и даже на ПК с Windows.
Видео YouTube 4K воспроизводится в Chrome.
Однако, в отличие от многих ПК с Windows, твердотельный накопитель на вашем Mac (в зависимости от модели) припаян к материнской плате и не может быть заменен в случае отказа. Это особенно важно для тех, у кого есть базовая модель SSD на 256 ГБ.
Из-за меньшей емкости и, следовательно, меньшего TBW, он с большей вероятностью быстрее изнашивается из-за чрезмерной записи данных по сравнению, например, с твердотельным накопителем емкостью 512 ГБ или 1 ТБ. Хотя, как я уже говорил ранее, это займет очень много времени, независимо от того, сколько вы туда напишете.
Если вы хотите ограничить объем данных, которые эти браузеры записывают на ваш внутренний SSD, я покажу вам, как отключить их в нескольких разных браузерах.
Как проверить, сколько данных приложения и процессы записывают на ваш SSD
Во-первых, нам нужно знать, как проверить, сколько данных приложения, такие как Chrome или Firefox, записывают на внутренний SSD. Это просто сделать в macOS, просто откройте «Монитор активности», перейдите на вкладку «Память» и щелкните правой кнопкой мыши в верхнем меню. Затем выберите «Записано байтов».
Как просмотреть записанное значение байтов в мониторе активности.
Это покажет, сколько байтов это конкретное приложение или процесс записало на ваш SSD с момента его открытия.
Отключение кэширования потокового мультимедиа в Chrome
Chrome использует процесс под названием "помощник Google Chrome" для записи и кэширования видеофайлов на твердотельный накопитель. К счастью, эту функцию можно относительно легко отключить. Просто скопируйте и вставьте следующее и вставьте его в строку поиска, а затем нажмите клавишу возврата.
Затем измените параметр «Отключить кэширование потокового мультимедиа на диск» с «По умолчанию» на «Включено». Перезапустите браузер при появлении запроса, и все. Потоковое видео больше не будет записываться на ваш диск.
Отключение кэширования потокового мультимедиа на диск в Chrome.
Отключение кэширования потокового мультимедиа в Brave/Opera
Brave и Opera основаны на Chromium, что означает, что они почти идентичны Chrome. Вы можете просто следовать тем же инструкциям, что и в Google Chrome.
Отключение кеша браузера Firefox
Перейдите к строке поиска в браузере Firefox и введите следующую команду:
о: конфигурации
Непосредственно под строкой поиска есть еще одна строка поиска, где вы должны ввести browser.cache.disk.enable и изменить этот параметр на false . Если вы предпочитаете ограничить объем данных, записываемых кешем браузера, вместо того, чтобы полностью отключить его, это также возможно. Убедитесь, что для параметра browser.cache.disk.enable задано значение true, и введите значение для browser.cache.disk.capacity .
Отключение кэшей Firefox.
Вы также можете выполнить поиск по запросу browser.cache.memory.enable и установить для него значение false, если хотите ограничить объем памяти, используемый Firefox для кэшированных данных. лично я этим не занимаюсь.Однако, если вы хотите, чтобы Firefox не использовал слишком много памяти, вы можете выбрать этот подход.
Отключение кеша браузера Edge
Откройте Finder и перейдите к скрытой папке библиотеки. Вы можете сделать это, нажав «Перейти» в верхнем левом углу, удерживая клавишу выбора на клавиатуре, и вы увидите, что появится папка «Библиотека».
Перейдите к Библиотека>Кэши>Microsoft Edge>По умолчанию>
Выберите папку Cache, щелкните правой кнопкой мыши, получите информацию, перейдите к разделу «Общий доступ и разрешения» и установите привилегию «только для чтения».
Отключение кэшей Edge.
Имейте в виду, что если вы когда-нибудь очистите папку caches, разрешения для этой папки, скорее всего, будут сброшены. Решение состоит в том, чтобы просто вернуться к этой папке и снова установить разрешения.
Есть ли недостатки в отключении кеша?
Короче говоря, не совсем так. Вы можете столкнуться с небольшой потерей производительности, особенно при просмотре видео на Youtube или другого потокового видеоконтента. Это связано с тем, что вместо кэширования видео (включая буферизацию) на ваш SSD браузер либо вообще не кэширует видео, либо кэширует его в ОЗУ.
Это приводит к следующему пункту: отключение кеша также может немного увеличить объем оперативной памяти, используемой вашим браузером. Однако при тестировании я не заметил значительного увеличения, и это актуально только в том случае, если вы активно смотрите или транслируете видео.
Читайте также: