Michael Schröpl: Reload der Seiten???

Beitrag lesen

Hi Elvis,

Folgendes hat mir der Provider zu meinem Problem gesagt:
"Dies ist ein uns bekanntes Problem zwischen dem IE6 und einem
Windows 2000 Web-Server mit IIS 5. Beim laden von ASP Seiten
cachet der IE6 die Seiten

... weil der IIS 5 ihm das nicht verboten hat ...

und holt diese nicht mehr vom Server.

... weil er so eingestellt ist, daß er den Cache-Inhalt nicht
ständig validiert ...

Leider können auch wir nichts dagegen tun,

Der Server muß HTTP-Header senden, die das Caching verhindern.
Er _könnte_ sinnvolle Defaultwerte setzen - beispielsweise für
alles, was *.asp ist, das Caching verbieten. So etwas sollte per
Konfiguration kein Problem sein, vermutlich nicht mal beim IIS.

dies ist ein Software (Browser) Fehler."

Tut der Server das nicht, dann hat der Browser keine Chance, sich
richtig zu verhalten.

Ich hab den Seiten folgenden Code beigefügt:
<%
Response.Expires = 0
Response.Expiresabsolute = Now() - 1
Response.AddHeader "pragma","no-cache"
Response.AddHeader "cache-control","private"
Response.CacheControl = "no-cache"
%>

Ja - genau das meinte ich.

Letzten Endes versteht _nur_ Deine Anwendung selbst, ob die von ihr
generierten Seiten in einem Cache gehalten werden dürfen oder nicht.
Ein Proxy hat keine Chance, zu erraten, was Du wolltest - Du mußt
es ihm explizit mitteilen.

Nimm Dir mal eine Suchmaschine als Beispiel. Woher soll ein Proxy
wissen, wie oft sich der Datenbestand der Suchmaschine ändert?
Vielleicht ändert er sich nur einmal pro Tag (wie hier bei der Ar-
chiv-Suchmaschine) ... dann darf der Cache die Seite sicherlich ein
paar Stunden aufbewahren. Wie lange genau, muß aber der Server bzw.
die serverseitige Applikation festlegen - nur die weiß, was sie will.
Ich selbst betreibe zwei Suchmaschinen, deren Ausgabe durchaus im
Browser-Cache verbleiben _soll_ - ich weiß, wann sich der Inhalt
frühestens wieder ändern kann, also teile ich das dem Browser mit.

In Deinem Fall hast Du mit "Private" dem Proxy verboten, zu cachen,
würdest es aber einem HTTP/1.1-Browser erlauben ("Cache-Control:"
hat für den meines Wissens Vorrang vor "Expires:" etc.) - willst Du
das so? Zumindest widerspricht das dem Rest Deiner HTTP-Header ...

Viele Grüße
      Michael