mmofacts.com

Header - Und wie aktuell bist du? :)

gepostet vor 19 Jahre, 10 Monate von knalli
Ich poste aus eigenem Interesse und um anderen zu helfen.

Viele Benutzerfehler bei OGs, die über Web basieren, werden irgendwann auf Cache, Header und Co zurückführbar sein.

Die Browser haben in der Regel die Angewohnheit, Seiten und Bilder ziwschen zuspeichern. Normalerweise ist dies nicht weiter schlimm, wenn man normal surft. Schließlich will man - auch zu Zeiten von DSL und und und - nicht immer alles neu laden.
Bei dynamischen Seiteninhalten (z.B. OGs), die bei der gleichen Seite 1 Minute später ein komplett anderes Bild geben können, ist dies jedoch fatal.

Bei uns galt damals immer: Cache leeren, Cookies entfernen, neu laden und und.. *g* Hatte ich nie Probleme, da ich damals stets im IE "Seiten immer laden" aktiviert hatte.
Seitdem ich Headerfunktionen (PHP) sendete, schien das Problem auch gegessen, da diese die Browsereinstellungen überschreiben.

Als kurzzeitig dies nicht mehr funktionierte, hagelte es von Fehlern :roll:
Interessanterweise hat gerade der FF keine vernünftige Einstellung (vor allem für Leute, denen der BRowser ja empfohlen wird), Seiten neu zu laden. Ich halt ´viel von dem Browser, aber das nehme ich dem Übel.

Ich habe lange gesucht und keine vernünftige Erklärung gefunden, wie Header in welcher Reihenfolge gesendet werden müssen.

Da ich derzeit Fehler bei Grafiken haben (werden angezeigt, aber der Header scheint falsch platziert zu sein), poste ich mal meinen Header; ich nehme gerne Verbesserungen an.. und vielleicht hilft es ja einem.

 

if($type
"") {
Header ("Content-type: ".$type);
}
header("Cache-control: private");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
if($expires==0) {
$expires = "Mon, 26 Jul 1997 05:00:00";
} else {
$expires = gmdate("D, d M Y H:i:s",$expires);
}
header("Expires: ".$expires . " GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");


session_start();
setlocale( LC_TIME, "de_DE" );

ini_set("zlib.output_compression_level", 3);
ob_start("ob_gzhandler");
gepostet vor 19 Jahre, 10 Monate von Gambler
Normalerweise cacht der Browser nix bei dynamischen Inhalten. Ich hatte mit sowas noch nie Probleme.
gepostet vor 19 Jahre, 10 Monate von feuerfuchs
hi, mir ist das problem auch bekannt, allerdings kann ich dies zumindest bei jsps umgehen ... im anschluss folgen dafür ein paar zeilen code ...

zum thmea ff:
schaltet einfach unter extras-einstellungen-datenschutz-cache den cache auf 0 kb!

jsp-cache-unterdrückung des browsers:


// cache unterdrücken
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Cache-Control","no-store" );
response.setDateHeader("Expires", 0);

einfach diesen code als 1. code auf einer jsp seite aufrufen
anmerkung: response ist ein implizites object

gruss
feuerfuchs
gepostet vor 19 Jahre, 10 Monate von knalli
Das entspricht den obigen..^^

Mir gehts darum, was kommt als erstes? Wann kommt der header Typ, wann kommt die Session und wann kommt die Kompression (effektiv bis logisch).

Auf diese Diskussion antworten