Autor Zpráva
HiPEP
Profil *
Snažím se využít externího souboru *.css, ale chci docílit toho, aby se nenačítal pořád, ale byla využita "keš" (chtěl bych to ale aplikovat i na obrázky)
Představoval bych si to tak, že součástí dotazu, který se posílá serveru by byla verze, kterou má klient uložen ve své kešce.

href="myStyle.css?<SCRIPT type='text/javascript'>Zde pak vycist z cache klienta, jakou verzi ma ulozenou</SCRIPT>"

Server by pak kontroloval dotaz a jestli by byla verze stejná, jaká se požaduje, tak by odeslal 304 (Not Modified)
Server si práve programuju a nemohu využít php. Takže jen javaScripty.

PS: Sotva s html, javascripty, atd začínám, takže prosím o přihlédnutí k tomu.... abych odpověď pochopil:)
joe
Profil
Takové soubory se ukládají do cache u klienta. Tzn. že se znovu již nenačítají (to jen po uplynutí nějaké doby, může to být v nastavení prohlížeče).

Lepší je na to jít opačně, pokud uděláš nějakou změnu v externím CSS, tak změň i část URL, která k souboru vede. Tím pak donutí prohlížeč u klienta stáhnout soubor znovu.

href="myStyle.css?v=1"

změna CSS:

href="myStyle.css?v=1.1"
HiPEP
Profil *
prave ze se znova nacitaji a od klienta mi chodi neustale pozadavky na css i na obrazky i kdyz je ma v cache.
pouzivam
<meta content="30" http-equiv="refresh">

a prave pri tom refresh se vsechno nacte znova.
Davex
Profil
HiPEP:
prave pri tom refresh se vsechno nacte znova
Aby začalo fungovat odesílání stavového kódu 304 při nezměněném souboru, tak musí server v HTTP hlavičce odesílat čas poslední změny souboru Last-Modified nebo ETag. Prohlížeč pak při refreshi pošle požadavek s HTTP hlavičkou If-Modified-Since nebo If-None-Match a server pošle podle toho celý soubor nebo beze změny stav 304.
HiPEP
Profil *
Davex:
Super. To je přesně ono. Mo děkuji za pomoc

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: