限制文件下载

2024-02-15

我目前正在为客户创建一个网站,该网站基本上涉及销售各种文件。这显然是一件非常常见的事情,这让我觉得自己很愚蠢,因为我没有想到一种方法来做到这一点。

购买完成后,客户应该会被带到包含下载链接的页面,并收到包含下载链接的电子邮件和包含将为他们创建的帐户信息的电子邮件(他们还可以从其帐户的控制面板下载)。我想要弄清楚的是如何隐藏/模糊文件在我的服务器上的位置,以便购买它的人不能简单地复制并粘贴到其他地方的文件的直接链接。即使我请求下载文件格式的链接http://example.com/blah/download/454643 http://example.com/blah/download/454643,一个与文件实际位置不对应的 URL,我认为仍然可以在服务器上找到该文件?我不太了解权限在我的服务器上如何工作,这就是我问的原因。提前致谢 :)


您基本上不会向用户提供该文件的直接 URL。基于服务器的权限在这里无关。

假设您已将所需的文件保存在 /data/files/file.pdf 中(将文件存储在 Web 根目录之外的良好做法)。 您可以为用户提供一个下载链接,类似于 /download.php?auth=32

当用户单击链接时,download.php 将检查会话/cookie 是否经过身份验证以及下载 ID 是否有效(如果您有基于时间的下载到期时间) 然后 download.php 将从其位置读取所需的文件,并将其与适当的标头一起发送到浏览器以强制下载。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

限制文件下载 的相关文章