每当我使用此脚本下载文件时,在下载时我看不到总大小和速度...我想使它看起来更像'直接下载链接'。此脚本的目的是隐藏直接下载链接限制直接下载和其他下载行为,如机器人。想想主人MediaFire,Rapidshare,互联星空等PHP:强制下载头不会显示总大小和速度
我们现在的脚本工作,但不显示,因为它是如何当你从一个正常的下载链接下载显示的,我会后所发生的事情的截图:
我希望这有助于截图,因为我搜索过小时,互联网,似乎无法找到解决这一:(。
if (isset($_GET['file'])){
$file = $_GET['file'];
$path = '/home/user/domains/domain.com/files/upload/';
$filepath = $path.$file;
if (file_exists($filepath)){
set_time_limit(0); // for slow connections
header('Content-Description: File Transfer');
header("Content-Disposition: attachment; filename=\"$file\"");
header('Content-Type: application/octet-stream');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($filepath));
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Expires: 0');
readfile($filepath); // send file to client
}
else{
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404);
}
}else{
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404);
}
Chrome/Safari的开发人员工具窗口对发送到客户端的标头有什么看法?另外,请尝试Firefox的“Live HTTP Headers”扩展。 – Dai
您正在测试什么浏览器和版本? – MrLore
@MrLore目前我们正在使用最新版本的Chrome,Internet Explorer和FireFox,我们希望它可以在所有浏览器上运行,但我们偏好使用Chrome。正如您在屏幕截图中看到的那样,它发生在Chrome和Internet Explorer上。 –