php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Bilder nach überschreiben im cache


 
Rasta
22-07-2003, 13:08 
 
Habe eine image gallery und ein upload tool dazu gebaut.

man kann also ein bild hochladen das dann automatisch verkleinert wird und in der image gallery ausgegeben wird.

die bilder bekommen einen namen zb pic_32.jpg und werden anhand einer datenbank ausgegeben.

das läuft auch alles super.

man kann jetzt aber auch dateien zb pic_32.jpg überschreiben indem man ein neues bild hochläd. das bild wird dann einfach auf dem server überschrieben.

das problem ist jetzt aber das wenn man jetzt die image gallery aufruft immer noch das alte bild angezeigt wird. es ist irgendwie noch im cache.

wenn ich auf aktualisieren klicke sehe ich das neue bild.
ich will aber nicht auf aktualisieren klicken müssen.

kann mir jemand helfen?!

 
graf
22-07-2003, 13:11 
 
dann prüf mal die einstellungen in deinem brauser
beim ie: interneteinstellungen -> allgemein -> temp. i-netdateien

aktualisierung der seite "bei jedem aufruf" statt automatisch

 
Konrad
22-07-2003, 13:27 
 
Wenn Du Caching generell für alle Browser abschalten möchtest, ist der beste Weg, die HTTP-Haeder zu setzen.

Für den Apache brauchst Du dafür 2 Module:
http://httpd.apache.org/docs/mod/mod_headers.html
http://httpd.apache.org/docs/mod/mod_expires.html

 
Abraxax
22-07-2003, 13:38 
 
@Konrad
ich glaube kaum, dass Rasta einen zugriff auf die apache-config hat.... ;)


@Rasta
sende die header dann mittels php header().
wenn du ein bild ausgibt, mache es so, dass es immer über eine php-datei kommt. darin sendest du die entsprechenden header und machst dann fopen() und fpassthru() der bilddatei. das sollte ausreichen.

 
Rasta
22-07-2003, 13:47 
 
ok vielen dank schon mal

aber ich möchte nicht das alle bilder neu geladen werden sonst hätte ich die bilder auch so einbinden können:


<img src="pic_3.jpg?<?php echo time(); ?> " width="200" height="200">

aber dann muss immer jedes bild neu geladen werden.

 
pekka
22-07-2003, 13:57 
 
Das kann auch auf Serverseite liegen. Probiers mal mit einem clearstatcache() vor Anzeige des Bildes.

 
Konrad
22-07-2003, 14:36 
 
Original geschrieben von Abraxax
@Konrad
ich glaube kaum, dass Rasta einen zugriff auf die apache-config hat.... ;)


ups... :o

 
Rasta
22-07-2003, 14:37 
 
also ich habe schon zugriff auf die config des servers aber ich denke es liegt an etwas anderem also client seitig

 
pekka
22-07-2003, 15:32 
 
Ich sag: Probier erstmal clearstatcache. Kann Wunder wirken.

 
Rasta
22-07-2003, 17:25 
 
hab ich schon probiert klappt aber auch nicht

 
Rasta
23-07-2003, 15:51 
 
ALSO es liegt auf jeden fall am Frameset denn ohne funktioniert alles wunderbar

 
pekka
23-07-2003, 16:32 
 
Dann musst Du im Header ein "no-cache" mitschicken.... Bei selfHTML (selfhtml.teamone.de) gabs da glaub mehr Info zu. Allerdings weiss ich nicht, ob es reicht, das in der HTML-Seite zu machen, die die Bilder enthält als vielmehr im Header des Bildes selber.


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:20 Uhr.