PHP Stream und Cache-Control

liquidbeats

Erfahrenes Mitglied
Hallo, kurze Frage.

Ich habe eine PHP-Datei, welche eine beim Aufruf eine bestimmte Datei als Stream ausgibt, da diese durchausschonmal 40, 50 oder 80 MB haben kann. Der Stream Funktioniert Problemlos, jedoch wird die Datei jedesmal erneut geladen, was durchaus ein erheblicher Trafficgenerator sein kann.
Meine Frage bezieht sich darauf, wie ich es Bestmöglich Realisiert bekomme, dass der Browser diese Daten zwischenspeichert, so dass die Daten nicht bei jedem aufruf erneut geladen und gesendet werden müssn.

Hat da jemand eine Idee?

Ich habe es bspe. hiermit probiert

header("Cache-Control: cache");
header("Pragma: cache");

Aber nicht sonderlich erfolgreich.



Grüße
 
Caching ist nur möglich, wenn die Daten vollständig angekommen sind. Wurde die Übertragung zwischendurch unterbrochen, ist es zwar auch möglich, die Übertragung an der stelle wieder aufzunehmen, an der sie unterbrochen wurde, allerdings befinden sich die Daten da noch nicht im Cache-Speichern sondern (vermutlich) in einem zusätzlichen Temporärspeichern. Mit „Cache-Control“ wirst du also nicht sehr weit kommen.

Falls der Client nun nur einen Teil anfordert, sendet er diese Information in dem „If-Range“-Header-Feld. Diesen müsstest du dann analysieren und entsprechend auswerten.
 
Zurück