Mailinglisten-Archive |
> Hy Michael, > >>ich biete Zip-Dateien zum Download an, diesen enthalten z.B. PDFs. Nur > im IE gibt es die Meldung, das Archiv sei korrupt. >Im FF läuft alles. >> >>Folgende Werte habe ich gesetzt: >> >> >> // required for IE, otherwise Content-disposition is ignored >> if(ini_get('zlib.output_compression')) >> { >> ini_set('zlib.output_compression', 'Off'); >> } >> >> header("Cache-Control: public"); >> header("Expires: 0"); >> header("Cache-Control: must-revalidate, post-check=0, > pre-check=0"); >> header("Cache-Control: private", false); // required for > certain >>browsers >> header("Content-Type: " . $downloads_array['content_type']); >> header("Content-Disposition: attachment; filename=\"" . >>basename($downloads_array['downloads_filename']) . "\""); >> header("Content-Transfer-Encoding: binary"); >> header("Content-Length: " . filesize($downloads_file)); >> readfile($downloads_file); > > nimm für den IE die Header wie unten, dann sollte es funzen. > Ich kann mich da noch schwach daran erinnern, der IE hat Probleme mit > dem Cache-control und Content-Disp. wie du es geschrieben hast. > > header("Cache-control: private"); > header("Content-Disposition: filename=\"" . > basename($downloads_array['downloads_filename']) . "\""); Diese Kombination funktioniert in allen Browsern für alle Dateien inkl. SSL: header('Pragma: anytextexeptno-cache', true); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private", false); header("Expires: 0"); header("Content-Type: application/octet-stream");
php::bar PHP Wiki - Listenarchive