在这种情况下,我遇到了mozilla firefox的问题。我正在生成文件,然后尝试下载该文件,然后从服务器中删除它。问题是,Firefox说该文件不存在,即使我可以看到它是在服务器上生成的。 Chrome和Opera完美运行。
firefox版本:58.0.2
任何需要为firefox调整的想法?
header('location: /path/'.$name.'.pptx');
header('Content-Disposition: attachment; filename="' .basename($name).'.pptx"');
ob_start();
flush();
sleep(5);
unlink($name.'.pptx');
答案 0 :(得分:1)
首先,为了理智,请使用DataSerice
代替Location
。
另外,根据我的理解,一旦发送location
标题,浏览器就会重定向到指定的URL。当浏览器重定向到另一个页面时,我觉得发布位置的所有标题都将变得无用。您下载的URL应发送Location
标头。另外,我建议在下载网址上添加标题Content-Disposition
和Content-Type
。