WN

WN (https://www.wn.se/forum/index.php)
-   Klientsidans teknologier, design och grafik (https://www.wn.se/forum/forumdisplay.php?f=12)
-   -   Cachad css (https://www.wn.se/forum/showthread.php?t=23189)

mazada 2007-08-27 23:29

Om man har en sida som har mycket trafik och ständigt återkommande besökare, så cachas ju css hos klienten.

Men om man nu ständigt jobbar med sidan och uppdaterar med nytt innehåll och nytt utseende, och lägger till ny information i cssen för sidan så blir det ju ett problem att återkommande besökare kanske har en cachad fil och delar av sidan ser miffat ut.

Idagsläget byter vi namn på cssen för varje publicering det är ju sisådär krångligt, men det måste finnas en smidigare lösning?

Lumax 2007-08-28 00:04

En vanlig lösning är ju att man lägger till en tidstämpel/slumpat nummer.
Kod:

<link href="css/style.css?time=<?php echo time(); ?>" rel="stylesheet" type="text/css" />

WizKid 2007-08-28 00:13

Fredrik S: Det betyder ju att den inte cachas alls. Låter inte speciellt smart att den aldrig cachas om man den uppdateras någon gång ibland.

Lumax 2007-08-28 00:19

Citat:

Originally posted by WizKid@Aug 28 2007, 00:13
Fredrik S: Det betyder ju att den inte cachas alls. Låter inte speciellt smart att den aldrig cachas om man den uppdateras någon gång ibland.
Den cachas, men till ingen nytta eftersom den aldrig mera kommer efterfrågas. :)
Har du något annat förslag som ger önskat resultat så är det välkommet.
Jag har jiddrat en hel del med olika headers för lösa problemet med att användare har en gammal css cachad, men det brukar sluta med samma gamla fullösning.

mazada 2007-08-28 00:42

Fredrik S Ja den lösningen var ju intressant men det är som WizKid säger att cache på css försvinner helt, och den är ju väldigt bra när den väl fungerar så jag vill inte kompromissa. Nu vet jag inte om det är möjligt.. men det är ju därför jag frågar =)

hnn 2007-08-28 01:12

Lägg till ett sessions id. Så att CSSn cachas under sessionen...

Aerpe 2007-08-30 17:05

Hmm...

Annars kan man göra så här.

<style type="text/css" media="screen">
<!--
@import url(");
@import url(");
-->
</style>

Om jag inte minns fel cachas det då.

DeSoto 2007-08-30 17:35

Varför inte sätta ett nummer för varje publicering, och öka det med 1 för varje publicering?

<link href="css/style.css?time=<?php echo $publnr; ?>" rel="stylesheet" type="text/css" />

elofsson 2007-08-30 23:28

Citat:

Originally posted by DeSoto@Aug 30 2007, 17:35
Varför inte sätta ett nummer för varje publicering, och öka det med 1 för varje publicering?
Det är klockrent. Jag brukar sätta dagens datum varje gång en CSS uppdateras men det blir ju samma sak.

Holger 2007-08-31 13:09

Såhär är nog det lättaste:

<link href="css/style.css?<?php echo filemtime('css/style.css'); ?>" rel="stylesheet" type="text/css" />


Då får du timestamp för senaste gången du ändrade i filen.


Alla tider är GMT +2. Klockan är nu 20:14.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson