0

我在使用 Safari 时遇到了很多问题。当我从 PHP 脚本提供下载时,下载的文件附加了“.html”扩展名。尽管我向客户端发送了 HTTP 标头,但我发现它们在检查器中发生了变化;特别是 mime-type 始终设置为text/html.

这是我发送到浏览器的内容:

<?php 

....

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: public, must-revalidate, post-check=0, pre-check=0");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=\"{$file['name']}\"");
header("Content-Type: ".$file['type']?$file['type']:'application/octet-stream');
header("Content-Transfer-Encoding: binary");
header('Content-Length: ' . filesize($file['file']));

ob_end_flush();
@readfile($file['file']);

其中 $file 包含:

$file = array(
  'name'=>'myfile.zip',
  'file'=>'/tmp/myfile.zip',
  'type'=>'application/zip'
);

我能做些什么?

4

0 回答 0