Mi történne, ha nem lennének gyorsítótárak?
Egyrészt lelassulnának a hálózati kapcsolatok, másrészt az áruk megnőne jelentősen.
Szerencsére ugyanarra a tartalomra többen és többször keresnek és ezeket a tartalmakat nem kell újra és újra létrehozni és letölteni az eredeti származási helyükről

A böngészők és az ISP-k (internetszolgáltatók), is használnak gyorsítótárakat, úgynevezett reverse-cache-t. A gyorsítótár abban segíti az web kiszolgálókat és a felhasználót is, hogy a kéréseket gyorsan tudja kielégíteni, tehát elmondhjatjuk általánosságban azt, hogy tartalékolja a tartalmat, fájlokat, későbbi felhasználásra.
Ezzel még nem is lenne baj, de vannak olyan dolgok, amelyeket
szükségtelen elmenteni, mert a nevük, vagy a méretük hiába
változatlan, tartalmuk megesik, hogy eltérő.
Jó példa erre, a dinamikusan létrehozott weboldalak
A gyorsítótárakat tudjuk kontrollálni, irányítani. Ha a honlap HTTP fejlécében elhelyezhetjük a Response objektumot, amely segítségével írányíthatjuk a gyorsítótárat.
Az objektumot beilleszteni az alábbi módon tudjuk:
Response.CacheControl =" érték ".
Ha itt "private" az érték, akkor a proxy kiszolgálók nem tárolják a tartalmat, csak a privát azaz a felhasználók böngészője. Ez az alapértelmezett.
Ha „public“ a jellemző értéke, ebben az esetben azt az oldalt bármelyik proxy kiszolgáló tárolhatja. Hogyha az a cél, hogy ne tárolhassa senki az oldalunkat, a propertynek „no-cache“ értéket kell megadunk.
Amikor tárolunk valamit, idővel érdemes azt frissíteni. Minden ilyen tárolt anyagnak van egy úgynevezett „lejárati ideje“, amit mi magunk állíthatunk be a Response.Expires és Response.ExpiresAbsolute jellemzők segítségével.
Az első jelenti az adott pillanattól fogva a lejárati időt (percben), a másodiknak konkrét időpontot adhatunk meg, pl.:
<% Response.ExpiresAbsolute=
˜ #April 06 17:33:11# %>
Az oldal tárolását elkerülhetjük úgy is, ha a lejárati időt -1-re állítjuk. Ezt a következőképp tehetjük meg:
<% Response.Expires = -1 %>
Mindennapi munkánk során elő szokott fordulni, hogy a szokásos HTTP fejléc helyett, egy speciális verziót kell alkalmaznunk, az aktuális feladathoz igazítva:
<% Response.AddHeader "Pragma", "no-cache" %>
Bármely okból kifolyólag előfordul olyan helyzet, amikor kerülni kell az ASP kódok használatát, vagy csak egyszerűen nem szeretnénk ASP scriptet a forráskódunkba, akkor használhatjuk a vezérlésre a HTML <meta> elemét.
- <META HTTP-EQUIV="CacheControl"
- ˜ CONTENT="no-cache">
- <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
- <META HTTP-EQUIV="Expires" CONTENT="-1">
Az adott feladathoz mérten kell eldöntenünk azt, hogy ASP kódot hívunk-e segítségül, vagy a régi bevált META tag-et használjuk. Mindkettő támogatott a böngészők oldaláról, az pedig már csak rajtunk múlik melyiket részesítjük előnyben.