头("位置:的index.php&#34);对我不起作用。
$ file是文件的路径。
if (file_exists($file)) {
header('Content-Description: File Transfer');
//header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.basename($file).'"');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
header("Content-Type: application/force-download");
readfile($file);
header("location:index.php");
exit;
}
答案 0 :(得分:0)
您的浏览器会调用服务器。服务器用标题响应("我将发送文件")并发送内容。浏览器读取标题,而不是显示它提供您保存文件的新页面。所有进一步的行动都会被忽略。
如果您想同时下载和重定向文件,则必须将下载请求发送到另一个容器(新标签,新窗口,iframe),然后使用javascript将主窗口重定向到其他位置。