What is a web cache?
A web cache stores temporary copies of web pages to improve performance and reduce bandwidth consumption.
Do I have a web cache?
You probably have several. Every web browser has a built in cache. Internet accelerators that you can buy in the store and install on your PC are usually web caches. Many internet service providers offer an internet accelerator as part of their service.
Some schools, organizations and internet service providers operate their own web caches that do not require software to be installed on your PC. These are used not only to improve performance, but sometimes to filter out objectionable material, or to ensure privacy.
At any given time, you may be browsing the web through several layers of caches.
Are your web caches properly configured?
Caches are supposed to perform their function behind the scenes, offering their benefits without changing how web pages work. This is known as semantic transparency.
The HTTP 1.1 specification gives a set of rules regarding transparency "because non-transparent operation may confuse non-expert users, and might be incompatible with certain server applications (such as those for ordering merchandise)"
Sometimes web caches break these rules in order to offer improved performance. Sometimes web caches can be improperly configured to break these rules. Breaking the semantic transparency rules of the HTTP specification can also break the expected behavior of web applications.
The following tests check to see if the web caches you are using have semantic transparency.
| Test | Status |
|---|---|
| No Validator, No Expiration | Perform Test |
| Pragma No-Cache | Perform Test |
| Query | Perform Test |
| Expires | Perform Test |
| Cache-Control No-Cache | Perform Test |
| Cache-Control Max-Age | Perform Test |
| POST Request-URI | Perform Test |
| POST Location | Perform Test |
| POST Self | Perform Test |