Hallo Stephan
Nur netscape macht mal wieder seine Seitensprünge ...
So so, Netscape ist also mal wieder Schuld, ja? Was dagegen, wenn ich mal meine Zweifel anmelde?
Wenn ich die Seite anfordere - nicht mit dem Browser, sondern in Handarbeit, also mit Telnet - erhalte ich diesen Ausschnitt aus der Session:
GET /js/docs/home.shtml HTTP/1.1
Host: www.webaid.de
HTTP/1.1 200 OK
Date: Tue, 07 Sep 1999 20:31:16 GMT
Server: Apache/1.3.9 (Unix) PHP/3.0.12
Transfer-Encoding: chunked
Content-Type: text/html
Ich fordere also die Seite /js/docs/home.shtml an und gebe auch noch den Hostnamen mit an. Die Antwort: Status 200, also alles ok. Die *aktuelle Zeit auf dem Server* ist heute 20:31:16 GMT, also 22:31:16 MESZ. Ja, und das war's! Da steht kein Last-Modified Header. Der Browser kann also gar nicht wissen, wann das Dokument das letzte Mal geaendert wurde, und deshalb gibt der Netscape - so wie es in der JS-Referenz steht - den 1. Januar 1970 zurueck, was einem Zeitwert von 0 Sekunden entspricht. Und in dieser Referenz steht dann auch gleich, wie man sowas abfaengt. Siehe also http://developer.netscape.com/docs/manuals/js/client/jsref/document.htm#1193811.
Noch ein wenig Erklaerung: Die letzte Aenderung eines Dokuments wird in einem HTTP-Header uebertragen, der so aussieht:
Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT
Laut HTTP 1.1 SOLLTE ein Webserver diese Information in den Headern mitschicken, er MUSS es aber NICHT. Ich frage mich zwar, warum gerade der Apache-Server dies hier unterlaesst, aber naja, er ist ja nicht dazu verpflichtet.
Und WAS ich sagen wollte: Schaut es Euch mal genauer an. Denn im Internet Explorer 5 funktioniert es bei mir wunderbar (7.September 1999).
7. September? Also heute? Wollen wir wetten, dass dort in einer Stunde der 8. September angezeigt wird? (Ich kann es leider nicht ueberpruefen, da ich keinen JS-faehigen IE habe.) Ich wuerde sagen, der IE zeigt einfach die aktuelle Zeit an, da er ja die Lastmodified-Information nicht hat, oder meinetwegen auch die Serverzeit, die im Date-Header mitgesendet wurde. Und das ist ganz genau... FALSCH!
Ach ja, mit einem Y2k-Problem hat das also ueberhaupt nichts zu tun, wie Du siehst.
Calocybe