Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 11711|Odpoveď: 0

[Webová stránka O&M] Optimalizácia výkonu webovej stránky: Podrobné vysvetlenie nastavení riadenia cache

[Kopírovať odkaz]
Zverejnené 7. 9. 2015 19:30:51 | | | |


HTTP hlavička Expires a riadenie cache


1. Koncept

Riadenie cache sa používa na riadenie HTTP cache (nemusí byť čiastočne implementované v HTTP/1.0, implementovaný je iba Pragma: no-cache)

Formát v balíku:

Cache-Control: cache-directive

Cache-Directive môže byť nasledovné:

Žiadosť:
| "bez cache"
| "Žiadny obchod"
| "max-vek" "=" delta-sekundy
| "max-stale" [ "=" delta-sekundy ]
| "min-fresh" "=" delta-sekundy
| "Bez transformácie"
| "len ak kešované"
| "rozšírenie cache"


Odpoveď:
| "verejný"
| "súkromné" [ "=" <"> názov poľa <"> ]
| "no-cache" [ "=" <"> názov poľa <"> ]
| "Žiadny obchod"
| "Bez transformácie"
| "musím revalidovať"
| "Proxy-revalidovať"
| "max-vek" "=" delta-sekundy
| "s-maxage" "=" delta-sekundy
| "rozšírenie cache"

Časť popisu:
Rozdelené na cacheovateľné alebo nie
Verejné znamená, že odpoveď môže byť uložená v akejkoľvek cache oblasti.
Súkromné znamená, že celá alebo časť odpovednej správy jedného používateľa nemôže byť spracovaná zdieľanou cache. To umožňuje serveru opísať len vtedy, keď používateľ
Čiastočná odpoveď, ktorá nie je platná pre požiadavky od iných používateľov.
no-cache znamená, že požiadavka alebo odpoveď nemôžu byť uložené do vyrovnávacej pamäte (HTTP/1.0 je nahradený Pragma no-cache)
Podľa toho, čo sa dá uložiť do vyrovnávacej pamäte
No-store sa používa na zabránenie neúmyselného zverejnenia dôležitých informácií. Odoslanie správy so žiadosťou spôsobí, že požiadavky a odpovede sa neukladajú do vyrovnávacej pamäte.
Časový limit podľa cache
Max-age znamená, že klient môže prijať odpoveď s životnosťou najviac určenou za stanovený čas (v sekundách).
min-fresh znamená, že klient môže prijať odpoveď s časom odozvy kratším ako aktuálny čas plus špecifikovaný čas.
max-stale znamená, že klient môže prijímať odpovedné správy aj po uplynutí časovej lehoty. Ak zadáte hodnotu pre správu max-stale, klient môže
Prijímajte odpovedné správy, ktoré presahujú stanovenú hodnotu nadčasového času.
Expires predstavujú čas existencie, čo klientovi umožňuje nekontrolovať (nežiadať) pred týmto časom, čo zodpovedá maximálnemu veku
Efekt. Ak však existujú súčasne, sú prepísané maximálnym vekom Cache-Control.
Formát:
Expires = "Expires" ":" HTTP-dátum
Napríklad
Expires: Thu, 01 Dec 1994 16:00:00 GMT (必须是GMT格式)

2. Aplikácia
Set expires a riadenie cache cez META cez HTTP
<meta http-equiv="Cache-Control" obsah="max-age=7200" />
<meta http-equiv="Expires" content="Po 20. júl 2009 23:00:00 GMT" />
Vyššie uvedené nastavenia sú len príklady a jeden z nich môžete skutočne použiť. Ak to napíšete takto, platí to len pre webovú stránku, nie pre obrázky alebo iné požiadavky na stránke, a nebude to robiť žiadnu cache.
Týmto spôsobom bude mať klient viac požiadaviek, a hoci ide len o kontrolu stavu Posledná úprava, počet požiadaviek určite ovplyvní rýchlosť prehliadania.
Ak chcete pridať cache do súboru, môžete použiť mod_expire modul od Apache, ktorý je napísaný ako
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 deň"
</IfModule>
Pamätám si, že ExpiresActive je nastavený na Zapnuté, najprv som ho nezapínal, a zdá sa, že nech je YSlow akokoľvek, nemôžem nájsť mechanizmus cache. Ak to pridáte takto, predvolene sa zobrazí všetko.
Ak chcete cieliť na jednotlivé typy MIME, môžete:
ExpiresByType image/gif "access plus 5 hodín 3 minút"
Pozri Apache Module mod_expires
Okrem toho, keď kliknete na Obnoviť v prehliadači, požiadavky odosielané klientom sú všetky max-age=0, čo znamená, že požiadavka je overená a odoslaná serveru
Ak požiadate o kontrolu cache a následnú aktualizáciu, zvyčajne dostanete 304 Not Modified, čo znamená, že sa nič nezmenilo.






Predchádzajúci:Nájdite brigádu a zarobte si privysoký príjem Nábor pracovníkov na čiastočný úväzok s vynikajúcim zaobchádzaním, hotovostným vyrovnaním, viac ako 300 denne
Budúci:Ako fuzzy query v Linq do SQL
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com