一个PHP脚本,让用户从我的网站下载文件而不泄露我网站上的实际文件链接?

Reg*_*ser 8 php scripting file download hide

这个问题说明了一切......我如何让用户从我的网站下载文件而不让他们看到该文件来自哪个链接?我知道可能需要像download.php这样的东西作为网关,但是过去那个阶段,我不知道接下来要编写什么脚本...如果它困扰你编写整个代码,那么一些函数名称就是我应该用得真的很方便!

zne*_*eak 10

找到一种方法来标识要下载的文件(例如,与数据库中行的ID匹配的GET变量,或者沿着这些行的某些内容).确定它是有效的,因为您不希望您的用户能够从您的网站下载任何内容.然后,使用headerwith Content-Disposition告诉浏览器应该下载文件,并readfile输出它.

例如:

<?php

$id = intval($_GET['id']);
$query = mysql_query('SELECT file_path FROM files WHERE id = ' . $id);
if (($row = mysql_fetch_row($query)) !== false)
{
    header('Content-Disposition: attachment; filename=' . basename($row[0]));
    readfile($row[0]);
}
exit;

?>
Run Code Online (Sandbox Code Playgroud)