每當我使用此腳本下載文件時,在下載時我看不到總大小和速度...我想使它看起來更像'直接下載鏈接'。此腳本的目的是隱藏直接下載鏈接限制直接下載和其他下載行爲,如機器人。想想主人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上。 –