Hallo,
auf meiner Website können eingeloggte User (Sessionbasiertes UMS) bestimmte Dateien downloaden, welche ausserhalb des HTTP Document-Roots meines Apache Servers liegen.
Hierzu hab ich ein PHP Script geschrieben, welches die entsprechenden Header Informationen generiert und die Datei ausgibt.
Leider funktioniert das mit manchen Browserversionen nicht. (z.B.: Netscape 7). Die Datei ist dann immer 0kb groß und heißt, wie das PHP-Script.
Dies sind die Header-Informationen, welche generiwert werden:
header("Content-Type: application/octetstream");
header("Content-Disposition: ".
(!strpos($HTTP_USER_AGENT,"MSIE 5.5")?"attachment; ":"").
"filename=".$datei_name);
header("Content-Transfer-Encoding: binary");
header("Cache-Control: post-check=0, pre-check=0");
header("Content-Length: {".$filesize."}");
Und danach lese ich die Datei folgendermaßen aus:
@readfile($pfad.$datei_name);
Woran liegt das? Wie kann ich den Fehler beheben?
Veielen Dank für Euere Hilfe
Maresa
P.S.: http://www.dclp-faq.de/q/q-datei-download.html kenn ich schon!