PHP 保护下载

标签 php file

我需要一种方法来保护文件的下载 URL 不被下载者看到。

想法是用户在付款后会得到一个下载链接,但要阻止他们在未付款的 friend 中传播该 URL。

有哪些常见的解决方案?可能更改文件名?

(我会做 PHP,mySql 这篇文章真的是为了方法)

最佳答案

如果用户在您的网站上有一个帐户,如果他们支付了下载费用,请将其存入您的数据库。然后给他们一个链接,例如 download.php,您可以在其中验证他们是否付款,如果是,则对该文件进行定位。 .pdf 示例:

if($userpaid === true) {
  $filename = 'congrat-you-paid-it.pdf'; //Name to display
  $file = './download/pdf/secretlink.pdf';      
  header('Content-type: application/pdf');
  header('Content-Disposition: inline; filename="'.$filename.'"');
  header('Content-Length: ' . filesize($file));
  @readfile($file);
  exit;
}

关于PHP 保护下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18356029/

相关文章:

Javascript 函数可以正确播放旧网站,但不能正确播放新网站

php - MySQL 中锦标赛计分表的查询优化

java - 检查属性文件是否存在并具有所需的属性

r - 确定执行脚本的路径

javascript - Jquery .on ("change",生成内容后不会触发 function()

javascript - 将 var 传递给另一个页面

c - 对 txt 文件使用 fscanf 并忽略除字母以外的所有内容

java - 文件上传错误 nanohttpd

python 从文件中删除行

php - Laravel Eloquent - 如何对条件进行分组