微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何为可下载文件创建临时链接

我正在制作一个临时下载链接的项目,以保护文件免受hotlinkers的攻击……

我相信这有可能这样做..因为我们都知道许多文件共享网站“不想提及任何”…他们的文件链接已到期…

防爆.

如果我从他们的网站下载一个文件,他们会给出一个直接链接来点击它吗?
但是那个链接会在几小时或几分钟后过期.

我怎么知道链接已过期?如果我在一天后在我的下载管理器上复制相同的链接,则无法下载相同的文件.

我已经在htaccess中实现了这一点.

防爆.

RewriteRule .*\.(rar|ZIP)$http://domain.com [R,NC]

如果他们复制浏览器地址栏中的直接链接,他们将在http://domain.com重定向

但是如果他们复制下载管理器上的直接链接,则会下载该文件.

如果他们将链接发布到论坛网站,博客等任何其他网站,该怎么办?
并要求读者将链接复制并粘贴到他们的下载管理器中,以便他们可以直接下载.

这是我想要阻止保护我的文件的问题.我在PHP上这样做但我无法弄清楚…

非常感激您的帮忙.

使用这样的代码
$path="uploads/";
                  $actualfilename=$path.$filename;
                  $fakefilename="downloadfile.pdf";
                   if($typeofview=="download") {
                          @readfile($actualfilename);
                        header('Content-type: application/pdf');
                        header('Content-disposition: attachment; filename="' . $fakefilename . '"');
                        header('Content-transfer-encoding: binary');
                        header('Content-Length: ' . filesize($actualfilename));
                        header('Accept-Ranges: bytes');
                        exit;

将其添加到.htaccess文件

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule fakefile.PHP(.*)$orignalfile.PHP?$1 [L,QSA]

原文地址:https://www.jb51.cc/php/138239.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐