Skip to main content

An analysis of local caches that Firefox uses

Back in the early days of the Internet, there was just a single cache for HTML files and static elements such as images but with the rise of HTML5 and modern web applications came new cache formats that modern web browsers use.

While it may make sense to use different locations for the cache from a developer point of view, it makes things difficult for privacy-conscious and technology-interested users who want to keep an eye on cache content and size.

Firefox Cache Information

firefox cache

The Offline cache

Introduced in 2007, it has been designed to store elements tagged with rel="offline-resource" in the offline cache.

The main idea is to provide offline browsing capabilities to devices, to improve the performance of important resources, and to reduce server load. The offline cache can be used by HTML5 applications

Developers can use the Application Cache (AppCache) interface to specify resources that the browser should cache and make available to offline users. Applications that are cached load and work correctly even if users click the refresh button when they are offline.

IndexedDB

  • Windows Vista and newer: C:\Users\<username>\AppData\Local\Mozilla\Firefox\Profiles\<salt>.<profile name>\indexedDB
  • Mac/Linux: /Users/<username>/Library/Caches/Firefox/Profiles/<salt>.<profile name>/indexedDB
  • Preference: dom.indexedDB.enabled
  • Values: True (enabled) or False (disabled)
  • Additional information: https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API

IndexedDB is a browser technology that can hold large amounts of structured data and supports high-performance searches using indexes. It is available offline, online and from within HTML5 Web Workers.

IndexedDB is a transactional database system, like a SQL-based RDBMS; however whereas the latter uses tables with fixed columns, IndexedDB is a JavaScript-based object-oriented database. IndexedDB lets you store and retrieve objects that are indexed with a key; any objects supported by the structured clone algorithm can be stored

To view IndexedDB content, use an add-on like SQLite Manager for Firefox.

Dom Storage

  • Windows Vista and newer: C:\Users\<username>\AppData\Local\Mozilla\Firefox\Profiles\<salt>.<profile name>\webappsstore.sqlite
  • Mac/Linux: /Users/<username>/Library/Caches/Firefox/Profiles/<salt>.<profile name>/webappsstore.sqlite
  • Preference: dom.storage.enabled
  • Values: True (enabled) or False (disabled)
  • Additional information: https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API

This enables client-side session and persistent storage in Firefox. It is used to store (more) data on the local system compared to cookies. Dom Storage is used by supercookies but also by sites who need to save data on the local system.

Firefox users may use the FireStorage extension for the web browser to display the content of HTML5 Local Storage for the active site in the browser.

While it is possible to disable one, some or all of the listed caches, you may run into issues when using web applications that utilize the features.

Now You: Got anything to add or comment on? Let us know below in the comment section.

This article was first seen on ComTek's "TekBits" Technology News

HOME