---
title: "Cashad CSS och reload"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/148789-cashad-css-och-reload"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "aasah"
published: "2006-07-06T10:25:04.000Z"
updated: "2006-07-09T12:36:14.000Z"
replies: 11
views: 731
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/148789-cashad-css-och-reload"
---

# Cashad CSS och reload

## #1 — aasah, 2006-07-06T10:25Z

Jag prövade att söka men jag söker troligen på helt fel saker...

Jag har äntligen fattat varför man ska ha sin CSS som en egen fil istället för att inkludera den i själva sidan med PHP:s include. Och det är väldigt trevligt med cash... utom när man gör förändringar i koden. Jag ser framför mig en längre period framöver när jag gradvis inför välbehövliga förbättringar av min CSS-kod. Hur försäkrar jag mig om att dessa förändringar kommer mina besökare till del om CSS:n finns i deras cash? 

Vad jag absolut inte vill ha är en header som laddar om sidan var x:e minut eller timme. Det rör sig om en pusselsida och det händer att folk ägnar en och samma sida verkligt lång tid... Jag tror inte de uppskattar om deras nästan färdiga korsord eller pussel, plötsligt återgår i nolläge...   

Jag har hört att det ska finnas något bra sätt via PHP...? Hur gör man annars? Hur gör ni? Vad är bra och dåligt med olika metoder? Tacksam för alla tips, tankar och funderingar om saken.

Permalänk: https://www.webforum.nu/p/148789

## #2 — cyprys, 2006-07-06T10:35Z

Det finns säkert många fina cachmetoder där man kör på livstider och senaster ändringar m.m.
Ett rätt vanligt hack är väl annars att länka till style.css?någotBogusVärde. Du kan ändra värdet för varje ändring i css-koden du gör. Ny länk betyder alltså att browsern inte har någon cache att hämta från, fast filen är densamma.

style.css?v001
style.css?v002

Brukar användas på bilder som helst inte ska cachas lite här och där.

Permalänk: https://www.webforum.nu/p/1837407

## #3 — @nders, 2006-07-06T10:36Z

Jag använder visserligen inte php, men cachingen i webbläsaren är ju densamma. Jag brukar lägga på/byta en liten querystring när jag ändrar css-filen. Alltså typ:

```
<link rel="stylesheet" href="style.css[b]?foo=111[/b]"/>
```

edit: det är tydligen inte bara jag som gör så. ;)

mvh

Permalänk: https://www.webforum.nu/p/1837408

## #4 — aasah, 2006-07-06T11:52Z

Det funkar alltså att slänga på en GET-sträng till en CSS-sida som aldrig kollar värdet? Perfekt! :D Tackar!

Finns det några nackdelar med den lösningen?

Permalänk: https://www.webforum.nu/p/1837423

## #5 — cyprys, 2006-07-06T11:55Z

> Finns det några nackdelar med den lösningen?

Du måste uppdatera querystringen till ett nytt värde varje gång du ändrar css-filen, alltså även ändra default.php. Men har du skött din css är det ju bara på ett ställe. ;)

Permalänk: https://www.webforum.nu/p/1837428

## #6 — aasah, 2006-07-06T12:01Z

Det är bara på ett ställe... :) 

Men det får alltså inga konsekvenser för sökmotorer tex...? Vilket tydligen kan vara fallet för vissa headers.

Permalänk: https://www.webforum.nu/p/1837430

## #7 — Matte, 2006-07-06T12:03Z

Det går att ladda om CSS-filen med javascript också: <http://www.phpportalen.net/viewtopic.php?p=391678#391678>

Permalänk: https://www.webforum.nu/p/1837431

## #8 — cyprys, 2006-07-06T12:11Z

Vilken sökmotor indexerar stylesheets? :) Jag kan inte se någon sådan nackdel direkt.

Matte: Fast är inte inte onödigt att förstöra cachen även om det inte behövs?

Permalänk: https://www.webforum.nu/p/1837435

## #9 — Matte, 2006-07-06T12:29Z

> **cyprys skrev:**
>
> Matte: Fast är inte inte onödigt att förstöra cachen även om det inte behövs?

Precis, och genom att använda ett javascript endast då det behövs, cachas normalt CSS-filen.

Sedan om du aktiverar funktionen med länk eller på annat sätt när du behöver är en annan sak.

Men återgår man till utgångsfrågan ser jag inte det hela som något problem.
De besökare som påverkas är endast de som besöker som besöker webbplatsen samtidigt som man ändrar CSS-filen, för övriga laddas CSS-filen om nästa gång de besöker sidan.

Vill man dock se till att CSS-filen inte cachas, och tänkt sig använd PHP, då borde man kunna göra så här:

```php
<?php // <-- Översta raden längst till vänster

header("Content-type: text/css");
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
?>

/* CSS-koden nedan */
```

och sedan länka in PHP-filen som CSS-fil.

Permalänk: https://www.webforum.nu/p/1837443

## #10 — aasah, 2006-07-06T14:45Z

> **Matte skrev:**
>
> Men återgår man till utgångsfrågan ser jag inte det hela som något problem.
> De besökare som påverkas är endast de som besöker som besöker webbplatsen samtidigt som man ändrar CSS-filen, för övriga laddas CSS-filen om nästa gång de besöker sidan....

Så resten får en ny version i alla fall? Det var ju bra att inse. :)

Tack för alla förslag och idéer, jag tror att jag kör på cyprys idé till att börja med i alla fall. :D

Permalänk: https://www.webforum.nu/p/1837468

## #11 — echoSwe, 2006-07-09T10:50Z

Är det bara jag som använder F5 i webbläsaren?

Permalänk: https://www.webforum.nu/p/1838013

## #12 — cyprys, 2006-07-09T12:36Z

> **echoSwe skrev:**
>
> Är det bara jag som använder F5 i webbläsaren?

Jo, men nu handlar det ju inte om vad utvecklaren ska göra utan vad  användarna ska behöva göra. Dvs ingenting.

Permalänk: https://www.webforum.nu/p/1838031

---

Tråden på webben: https://www.webforum.nu/amne/php/148789-cashad-css-och-reload
