Hallo Stefan,
S e l t s a m e r w e i s e tritt dieses Problem jedoch nicht beim Firefox auf! Dort haben die Cookies korrekte Ablaufzeitpunkte, nämlich genau die 1 Stunde (minus 3 Minuten) in der Zukunft. Anscheinend korrigiert Firefox die (falsche) Server-Zeit automatisch so, daß sie mit der Client-Zeit übereinstimmt. W i e m a c h t d e r d a s ?
Bei HTTP gibt's ein Header-Feld namens 'Date', das die Serverzeit angibt, d.h. der Browser kennt die Serverzeit. Dann berechnet Firefox offensichtlich die Differenz zwischen Cookie-Expire-Datum und dem aktuellen Serverdatum und addiert das auf die *lokale* Client-Zeit drauf.
Und gibt es eine Möglichkeit, dies auch bei Opera zu erreichen?
Wenn Opera das defaultmäßig nicht macht: ich bezweifle, dass es dafür eine Einstellung gibt.
Und ganz ehrlich: In meinen Augen ist das ganze ein grundsätzliches Problem: Welche Zeit ist gemeint? Das geht ja nicht nur bei Cookies so, sondern auch bei Caching-Dingen wie Expires / Cache-Control: max-age etc. Das Problem ist doch schlichtweg, dass ja unterschiedliche Semantiken hinter den Angaben stecken könnten:
* Du willst ein Cookie setzen, das exakt am 1. Januar 2015 ausläuft, weil da irgend ein tolles Ereignis stattfindet oder sowas. Dann soll die Datumsangabe nicht mehr umgerechnet werden, denn sonst trifft der Client das anvisierte Datum nicht mehr richtig.
* Du willst ein Cookie setzen, das *ab Abruf* x Sekunden gilt. Dann ist es vmtl. am sinnvollsten, die Datumsangabe bezüglich der Differenz zwischen Client- und Serverzeit zu korrigieren.
Es gibt aber keine Möglichkeit, beim Setzen eines Cookies zu sagen, welche der beiden Dinge gewünscht ist. Genausowenig bei Caching-Headern. Ich habe jetzt auch nicht nachgelesen, was der HTTP-Standard in diesem Fall vorschreibt, mich würde es aber nicht wundern, wenn er's offen lässt.
Die einzige _saubere_ Lösung ist in meinen Augen: Sorge dafür, dass die Serverzeit korrekt ist (d.h. mit dem Support sprechen), denn wenn sowohl Client als auch Server die gleiche Uhrzeit haben, dann tritt das Problem *nicht* auf.
Viele Grüße,
Christian
"I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone." - Bjarne Stroustrup