<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=Web_cache</id>
	<title>Web cache - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.sarg.dev/index.php?action=history&amp;feed=atom&amp;title=Web_cache"/>
	<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=Web_cache&amp;action=history"/>
	<updated>2026-04-20T10:48:37Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://wiki.sarg.dev/index.php?title=Web_cache&amp;diff=273154&amp;oldid=prev</id>
		<title>imported&gt;Minerva P. Malveen: Undid revision 1322185998 by ~2025-33316-23 (talk)</title>
		<link rel="alternate" type="text/html" href="https://wiki.sarg.dev/index.php?title=Web_cache&amp;diff=273154&amp;oldid=prev"/>
		<updated>2025-11-14T20:57:22Z</updated>

		<summary type="html">&lt;p&gt;Undid revision &lt;a href=&quot;/index.php/Special:Diff/1322185998&quot; title=&quot;Special:Diff/1322185998&quot;&gt;1322185998&lt;/a&gt; by &lt;a href=&quot;/index.php/Special:Contributions/~2025-33316-23&quot; title=&quot;Special:Contributions/~2025-33316-23&quot;&gt;~2025-33316-23&lt;/a&gt; (&lt;a href=&quot;/index.php?title=User_talk:~2025-33316-23&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;User talk:~2025-33316-23 (page does not exist)&quot;&gt;talk&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{short description|System for optimizing the Web}} &lt;br /&gt;
&lt;br /&gt;
A &amp;#039;&amp;#039;&amp;#039;web cache&amp;#039;&amp;#039;&amp;#039; (or &amp;#039;&amp;#039;&amp;#039;HTTP cache&amp;#039;&amp;#039;&amp;#039;) is a system for optimizing the World Wide Web. It is implemented both client-side and server-side. The caching of multimedia and other files can result in less overall delay when [[web browser|browsing]] the Web.&amp;lt;ref&amp;gt;{{Cite web |last=Fountis |first=Yorgos |date=4 May 2017 |title=How does the browser cache work? |url=https://pressidium.com/blog/2017/browser-cache-work/}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{Cite journal |last1=Messaoud |first1=S. |last2=Youssef |first2=H. |date=2009 |title=An analytical model for the performance evaluation of stack-based web cache replacement algorithms |url=https://onlinelibrary.wiley.com/doi/10.1002/dac.1036 |journal=International Journal of Communication Systems |language=en |volume=23 |pages=1–22 |doi=10.1002/dac.1036|s2cid=46507769 |url-access=subscription }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Parts of the system==&lt;br /&gt;
&lt;br /&gt;
===Forward and reverse===&lt;br /&gt;
A forward cache is a cache outside the [[web server]]&amp;#039;s network, e.g. in the client&amp;#039;s [[web browser]], in an [[ISP]], or within a corporate network. A network-aware forward cache only caches heavily accessed items. A proxy server sitting between the client and web server can evaluate HTTP headers and choose whether to store web content.&lt;br /&gt;
&lt;br /&gt;
A reverse cache sits in front of one or more web servers, accelerating requests from the Internet and reducing peak server load. This is usually a [[content delivery network]] (CDN) that retains copies of web content at various points throughout a network.&lt;br /&gt;
&lt;br /&gt;
===HTTP options===&lt;br /&gt;
The Hypertext Transfer Protocol (HTTP) defines three basic mechanisms for controlling caches: freshness, validation, and invalidation. This is specified in the header of HTTP response messages from the server.&lt;br /&gt;
&lt;br /&gt;
Freshness allows a response to be used without re-checking it on the origin server, and can be controlled by both the server and the client. For example, the Expires response header gives a date when the document becomes stale, and the Cache-Control: max-age directive tells the cache how many seconds the response is fresh for.&lt;br /&gt;
&lt;br /&gt;
Validation can be used to check whether a cached response is still good after it becomes stale. For example, if the response has a Last-Modified header, a cache can make a &amp;#039;&amp;#039;conditional request&amp;#039;&amp;#039; using the If-Modified-Since header to see if it has changed. The ETag (entity tag) mechanism also allows for both strong and weak validation.&lt;br /&gt;
&lt;br /&gt;
Invalidation is usually a side effect of another request that passes through the cache. For example, if a URL associated with a cached response subsequently gets a POST, PUT or DELETE request, the cached response will be invalidated.&lt;br /&gt;
Many CDNs and manufacturers of network equipment have replaced this standard HTTP cache control with dynamic caching.&lt;br /&gt;
&lt;br /&gt;
==Legality==&lt;br /&gt;
In 1998, the [[Digital Millennium Copyright Act]] added rules to the United States Code (17 U.S.C. §: 512) that exempts system operators from copyright liability for the purposes of caching.&lt;br /&gt;
&lt;br /&gt;
==Server-side software==&lt;br /&gt;
This is a list of server-side web caching software.&lt;br /&gt;
{| style=&amp;quot;font-size: 85%; text-align: center; width: auto;&amp;quot; class=&amp;quot;sortable wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Name&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Operating system&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Forward&amp;lt;br /&amp;gt;mode&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|Reverse&amp;lt;br /&amp;gt;mode&lt;br /&gt;
!rowspan=&amp;quot;2&amp;quot;|License&lt;br /&gt;
|-&lt;br /&gt;
![[Microsoft Windows|Windows]]&lt;br /&gt;
![[Unix-like]]&lt;br /&gt;
!Other&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; |[[Apache HTTP Server]]&lt;br /&gt;
| {{yes}}&lt;br /&gt;
| {{yes|OS X, Linux, Unix, FreeBSD, Solaris, Novell NetWare}}&lt;br /&gt;
| {{yes|OS/2, TPF, OpenVMS, eComStation}}&lt;br /&gt;
|{{Yes}}&lt;br /&gt;
|&lt;br /&gt;
| {{open source|[[Apache 2.0]]}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[aiScaler]] Dynamic Cache Control&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{yes|[[Linux]]}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| {{Proprietary}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[ApplianSys#CACHEbox|ApplianSys CACHEbox]]&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{yes|[[Linux]]}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| {{Proprietary}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[Blue Coat Systems|Blue Coat]] ProxySG&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{yes2|SGOS}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Proprietary}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[Nginx]]&lt;br /&gt;
| {{yes}}&lt;br /&gt;
| {{yes|[[Linux]], [[BSD]], [[OS X]], [[Solaris (operating system)|Solaris]], [[AIX]], [[HP-UX]]}}&lt;br /&gt;
| {{yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{open source|2-clause [[BSD licenses|BSD]]-like}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[Microsoft Forefront Threat Management Gateway]]&lt;br /&gt;
| {{yes}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Proprietary}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[Polipo]]&lt;br /&gt;
| {{yes}}&lt;br /&gt;
| {{yes|[[OS X]], [[Linux]], [[OpenWrt]], [[FreeBSD]]}}&lt;br /&gt;
| {{dunno}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{open source|[[MIT License]]}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[Squid (software)|Squid]]&lt;br /&gt;
| {{yes}}&lt;br /&gt;
| {{yes|[[Linux]]}}&lt;br /&gt;
| {{dunno}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{open source|[[GPL]]}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[Apache Traffic Server]]&lt;br /&gt;
| {{dunno}}&lt;br /&gt;
| {{yes|[[Linux]]}}&lt;br /&gt;
| {{dunno}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{open source|[[Apache 2.0]]}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | Untangle&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{yes|[[Linux]]}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Proprietary}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[Varnish (software)|Varnish]]&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{yes|[[Linux]]}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{Needs}} a VMOD&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{open source|[[BSD licenses|BSD]]}}&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; | [[WinGate]]&lt;br /&gt;
| {{yes}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Proprietary}} (Free for 8 users)&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;row&amp;quot; |Nuster&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{yes|[[Linux]]}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{open source|[[GPL]]}}&lt;br /&gt;
|-&lt;br /&gt;
![[McAfee]] Web Gateway&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{yes2|McAfee Linux Operating System}}&lt;br /&gt;
| {{no}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Yes}}&lt;br /&gt;
| {{Proprietary}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [[InterPlanetary File System]] - makes web caches redundant&lt;br /&gt;
* [[Cache Discovery Protocol]]&lt;br /&gt;
* [[Cache manifest in HTML5]]&lt;br /&gt;
* [[Content delivery network]]&lt;br /&gt;
* [[Harvest project]]&lt;br /&gt;
* [[Proxy server]]&lt;br /&gt;
* [[Web accelerator]]&lt;br /&gt;
*[[Search engine cache]]&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
==Further reading== &lt;br /&gt;
* Ari Luotonen, &amp;#039;&amp;#039;Web Proxy Servers&amp;#039;&amp;#039; (Prentice Hall, 1997) {{ISBN|0-13-680612-0}}&lt;br /&gt;
* Duane Wessels, &amp;#039;&amp;#039;Web Caching&amp;#039;&amp;#039; (O&amp;#039;Reilly and Associates, 2001). {{ISBN|1-56592-536-X}}&lt;br /&gt;
* Michael Rabinovich and Oliver Spatschak, &amp;#039;&amp;#039;Web Caching and Replication&amp;#039;&amp;#039; (Addison Wesley, 2001). {{ISBN|0-201-61570-3}}&lt;br /&gt;
{{WebManTools}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Web Cache}}&lt;br /&gt;
[[Category:Hypertext Transfer Protocol]]&lt;br /&gt;
[[Category:Cache (computing)]]&lt;br /&gt;
[[Category:Proxy servers|*]]&lt;br /&gt;
[[Category:Web caching protocol]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Minerva P. Malveen</name></author>
	</entry>
</feed>