Cikk azonosítója: 234067 - Utolsó ellenőrzés: 2006. március 13. - Verziószám: 4.1 A gyorsítótárazás megakadályozása az Internet Explorer programban
A lap tartalmaÖsszefoglaló
Ez a cikk a azt ismerteti, hogyan lehet az Internet Explorer programban a weblapok gyorsítótárazását HTTP-fejlécek használatával vezérelni. A Microsoft Internet Information Server (IIS) szolgáltatás segítségével egyszerűen megjelölhetők a gyakran változó vagy érzékeny weblapok a megfelelő Active Server Pages (ASP) oldal legelejére beillesztett alábbi néhány sorral: További információAz elévülés és az elévülési fejlécFeltétlenül ajánlott, hogy a webkiszolgálók használjanak sémát valamennyi weblapjuk elévülésének kezeléséhez. Nemkívánatos gyakorlat az, hogy a webkiszolgálók nem szolgálnak elévülési információval a kérelmező ügyfeleknek küldött válaszok HTTP-elévülési fejlécében. A legtöbb böngészőprogram és a közbenső proxy figyelembe veszi az elévülési információt, és felhasználja azt a hálózaton folyó kommunikáció hatékonyságának növelésére.Az elévülési fejléc funkciója az, hogy meghatározza azt az időtartamot, amely után a kiszolgálótól lekért fájlt az ügyfélnek frissítenie kell. A rendszeresen frissített oldalak esetében a leghatékonyabb válasz a következő frissítés időpontja. Vegyünk például egy napi híreket szolgáltató weblapot, amelyet minden nap reggel 5 órakor frissítenek. Ennek a weblapnak a kiszolgálója az elévülési fejlécben másnap 05:00 órai értéket küld vissza, így a böngésző nem fog kapcsolatba lépni a webkiszolgálóval, csak amikor a weblap tartalma ténylegesen megváltozhatott. Az olyan oldalakat, amelyek várhatóan nem fognak változni, körülbelül egy éves lejárati idővel érdemes megjelölni. A webkiszolgálókon sok esetben több olyan gyorsan változó oldal is található, amelyek tartalma bármikor módosulhat. Ezeket az oldalakat az elévülési fejlécben -1 értékkel kell a kiszolgálónak megjelölnie. A felhasználó következő műveletei alkalmával az Internet Explorer a webkiszolgálóhoz fordul az oldal frissítéséért egy feltételes „If-Modified-Since” kérelmen keresztül. Az oldal azonban továbbra is megtalálható a helyi lemezen a gyorsítótárban (a Temporary Internet Files mappában), és a megfelelő helyzetekben a rendszer nem fordul a webkiszolgálóhoz, hanem a tárolt oldalt használja. Ilyen helyzet a böngésző VISSZA vagy ELŐRE gombjával léptetés az oldalak között vagy a böngésző kapcsolat nélküli módban történő használata. A Cache-Control (gyorsítótárazás-vezérlő) fejlécBizonyos oldalak olyan gyorsan változóak vagy érzékenyek, hogy nincs szükség a lemezen történő gyorsítótárazásukra. E célból támogatja az Internet Explorer a HTTP 1.1 protokoll Cache-Control fejlécét, amely megakadályozza egy adott webes erőforrás gyorsítótárazását, ha a HTTP 1.1 kiszolgáló a fejlécben a „no-cache” értéket adja meg.Mivel azonban azok az oldalak, amelyeket a rendszer nem gyorsítótáraz nem érhetők el mindaddig, amíg a böngésző újra kapcsolatba nem lépett a webkiszolgálóval, a kiszolgálóknak tanácsos óvatosan bánni Cache-Control fejléccel. A legtöbb esetben az „Expires: -1” érték használata ajánlott. A „Pragma: No-Cache” fejlécSajnálatos módon a régebbi, HTTP 1.0 protokollt használó kiszolgálók nem képesek a Cache-Control fejléc használatára. A HTTP 1.0 protokollt használó kiszolgálókkal való visszamenőleges kompatibilitás biztosítása érdekében az Internet Explorer támogatja a „Pragma: No-Cache” HTTP-fejléc speciális használatát. Ha az ügyfél biztonságos kapcsolaton (https://) keresztül kommunikál a kiszolgálóval, és a kiszolgáló a válaszban „Pragma: No-Cache” fejlécet küld vissza, akkor az Internet Explorer nem gyorsítótárazza a választ.Érdemes azonban megjegyezni, hogy a „Pragma: No-Cache” fejlécet nem erre a célra találták ki. A HTTP 1.0 és 1.1 specifikációja szerint ez a fejléc kérelmekkel és nem válaszokkal kapcsolatos, és valójában annak megelőzésére szolgál, hogy a proxykiszolgálók megakadályozzák bizonyos fontos kérelmek eljutását a célwebkiszolgálóhoz. A jövőbeli alkalmazások számára a gyorsítótárazás vezérlésének megfelelő módja a Cache-Control fejléc alkalmazása. A HTTP-EQUIV META címkékA HTML-kódolású lapok lehetővé teszik a META címke egy olyan speciális HTTP-EQUIV formátumának használatát, amely bizonyos HTTP-fejléceket a HTML-dokumentumból határoz meg. Az alábbi rövid HTML-kódrészlet mind a „Pragma: no-cache”, mind az „Expires: -1” fejlécet tartalmazza:A Cache-Control META HTTP-EQUIV címkéket az Internet Explorer 4-es és 5-ös verziói figyelmen kívül hagyják, így azok hatástalanok. A gyorsítótárazás vezérlésének használatához ezt a fejlécet a „Cache-Control (gyorsítótárazás-vezérlő)” szakaszban leírtak szerint, HTTP-fejlécek használatával kell megadni. Fontos megjegyezni, hogy a hagyományos HTTP-fejlécek használata sokkal inkább ajánlott, mint a META címkék használata. A META címkéknek tipikusan a HTML HEAD szakasz legelején kell elhelyezkedniük. A Pragma HTTP-EQUIV META címkékkel kapcsolatban legalább egy probléma már ismert. A Microsoft Tudásbázis kapcsolódó cikke: 222064
(http://support.microsoft.com/kb/222064/
)
A „Pragma: No-cache” címke nem minden esetben akadályozza meg az oldal gyorsítótárazását (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
A gyorsítótárazás kiszolgálóoldali beállításai
Ha a gyorsítótárazás-vezérlő (Cache-Control) fejléceket nem ASP alapú oldalakon kell használni, akkor szükség lehet a kiszolgáló konfigurációjának módosítására, hogy a fejlécet automatikusan adja hozzá az oldalakhoz. Nézzen utána a kiszolgáló dokumentációjában annak, hogyan lehet engedélyezni HTTP-fejlécek hozzáadását egyes könyvtárak esetében a kiszolgáló által adott válaszokhoz. Az IIS szolgáltatás 4-es verziója esetében például kövesse az alábbi lépéseket:
Hivatkozások
A Microsoft Tudásbázis kapcsolódó cikkei:
189409
(http://support.microsoft.com/kb/189409/
)
INFO: A Weboldalak cache-elésének irányítása IIS 4.0-val
165150
(http://support.microsoft.com/kb/165150/
)
A „Pragma: No-cache” fejléc használata az IIS és az Internet Explorer programokkal (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
A HTTP 1.1 protokollról további információt az RFC 2616 dokumentumban talál. A dokumentum beszerezhető az alábbi webhelyen:http://www.w3.org/Protocols/rfc2616/rfc2616.html
(http://www.w3.org/Protocols/rfc2616/rfc2616.html)
A cikkben található információ a következő(k)re vonatkozik:
A Microsoft tudásbázisban szolgáltatott információkat "az adott állapotban", bárminemű szavatosság vagy garancia nélkül biztosítjuk. A Microsoft kizár mindennemű, akár kifejezett, akár vélelmezett szavatosságot vagy garanciát, ideértve a forgalomképességre és az adott célra való alkalmasságra vonatkozó szavatosságot is. A Microsoft Corporation és annak beszállítói semmilyen körülmények között nem felelősek semminemű kárért, így a közvetlen, a közvetett, az üzleti haszon elmaradásából származó vagy speciális károkért, illetve a kár következményeként felmerülő költségek megtérítéséért, még abban az esetben sem, ha a Microsoft Corporationt vagy beszállítóit az ilyen károk bekövetkeztének lehetőségére figyelmeztették. Egyes államok joga nem teszi lehetővé bizonyos károkért a felelősség kizárását vagy korlátozását, ezért a fenti korlátozások az ön esetében esetleg nem alkalmazhatók. | Egyéb források További támogatás
KözösségAzonnali segítségA cikk fordítása
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email
A lap tetejére
