Deus Figendi: wechselndes Hintergrundbild, dennoch Caching

Beitrag lesen

bei Deinem Vorgehen - Generierung der Grafik auf Serverseite unter Beibehaltung der URL - wurde die Grafik *nie* bereits einmal geladen. Sie wird stets frisch generiert.
Wenn er es kennt, muss er es _er_kennen können. Das entscheidende Kriterium hierzu ist die URL.

Ich kenne das Verhalten genau umgekehrt: URL identisch, Ressource ist die gleiche (also der Mime-Typ), okay, cache. Das hat mir auch schon Probleme bereitet, eben weil das Bild aktualisiert sein sollte (Graph aus Datenbank). Lösung: GET-Variable übergeben, die nicht ausgewertet wurde (timestamp), folglich jedesmal eine andere URL, Browser läd jedes Mal neu.

Für den vorliegenden Fall wäre das dass man eben keine zufällige Variable übergibt, sondern eine die das Bild identifiziert. Dazu müsste man aber vielmehr das HTML (respektive CSS) dynamisch ändern (nämlich die Bild-Refferenz) und nicht das Bild selber. Und dann... kannst du eigentlich auch normale Bilddateien nehmen.
Z.B. so:

a.lustigerlink {  
 color:#123456;  
}  
.foobar {  
 eigenschaft:wert;  
}  

~~~~~~php
  
<?php  
echo ('body {  
 background-image:url(./images/bg'.rand(0,9).'.png);  
}  
?>  

~~~~~~css
  
.another_class {  
 margin-top:15px;  
}

So sollte immer ein zufälliges Bild aus den Bildern bg0.png bis bg9.png ausgewählt und gezeigt werden und es dürfte auch idR aus dem Cache geholt werden.
_Aber_ man sollte das wohl besser in der HTML-Datei machen und nicht in einer externen CSS-Datei, weil diese oftmals auch gecached werden :)

Gruß

--
sh:( fo:| ch:? rl:( br:& n4:& ie:{ mo:} va:) de:µ_de:] zu:) fl:( ss:| ls:[ js:(