我在CentOS 7上遇到PHP下载问题。 Apache版本:Apache / 2.4.6(CentOS)PHP / 5.4.16
我想知道什么可能是问题/任何可能阻止下载工作的配置。在我的本地机器上,这是有效的。我已经更改了标题,完成了这项操作并且在我的本地计算机上运行良好,但是当我在服务器上进行部署时,下载无效。
这是我的代码:
set_time_limit(0);
ignore_user_abort(false);
@apache_setenv('no-gzip', 1);
if(ini_get('zlib.output_compression')) { ini_set('zlib.output_compression', "Off"); }
$filepath = "/var/www/creative/testdownload.pdf";
if ($fd = fopen ($filepath, "r")) {
$fsize = filesize($filepath);
$path_parts = pathinfo($filepath);
header('Pragma: public');
header("Expires: -1");
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Cache-Control: no-store');
header('Content-Type: application/force-download');
header("Content-Disposition: attachment; filename=\"preview.pdf\"");
//header("Content-Transfer-Encoding: Binary");
header("Keep-Alive: close");
header('Content-Length: '.$fsize);
header("Accept-Length: ".$fsize);
while (!feof($fd)) {
echo fread($fd, 8192);
flush();
@ob_flush();
}
}
fclose ($fd);