A Web cache (or HTTP cache) is an information technology for the temporary storage (caching) of Web documents, such as Web pages, images, and other types of Web multimedia, to reduce server lag. A Web cache system stores copies of documents passing through it; subsequent requests may be satisfied from the cache if certain conditions are met. A Web cache system can refer either to an appliance, or to a computer program.
Web caches can be used in various systems (as viewed from direction of delivery of Web content):
A forward cache is a cache outside the Web server's network, e.g. on the client computer, in an ISP or within a corporate network. A network-aware forward cache is just like a forward cache but only caches heavily accessed items. A client, such as a Web browser, can also store Web content for reuse. For example, if the back button is pressed, the local cached version of a page may be displayed instead of a new request being sent to the Web server. A Web proxy sitting between the client and the server can evaluate HTTP headers and choose whether to store Web content.
A reverse cache sits in front of one or more Web servers and Web applications, accelerating requests from the Internet, reducing peak Web server load. A content delivery network (CDN) can retain copies of Web content at various points throughout a network. A search engine may also cache a website; it provides a way of retrieving information from websites that have recently gone down or a way of retrieving data more quickly than by clicking the direct link. Google, for instance, does so. Links to cached contents may be found in Google search results.
Many CDNs and manufacturers of network equipment have replaced this standard HTTP cache control with dynamic caching.
The following is a list of dedicated Web caching server software:
|Apache HTTP Server||Windows, OS X, Linux, Unix, FreeBSD, Solaris, Novell NetWare, OS/2, TPF, OpenVMS and eComStation||No||Yes||Apache License 2.0|
|aiScaler Dynamic Cache Control||Linux||Yes||Yes||Proprietary|
|Blue Coat ProxySG||SGOS||Yes||Yes||Proprietary|
|Nginx||Linux, BSD variants, OS X, Solaris, AIX, HP-UX, other *nix flavors||No||Yes||2-clause BSD-like|
|Microsoft Forefront Threat Management Gateway||Windows||Yes||Yes||Proprietary|
|Polipo||Windows, OS X, Linux, OpenWrt, FreeBSD||Yes||Yes||MIT License|
|Squid||Linux, Unix, Windows||Yes||Yes||GNU General Public License|
|Traffic Server||Linux, Unix||Yes||Yes||Apache License 2.0|
|Varnish||Linux, Unix||Yes (possible with a VMOD)||Yes||BSD|
|WinGate||Windows||Yes||Yes||Proprietary / Free for 3 users|
|Nuster||Linux, Unix||No||Yes||GNU General Public License|