允许网站使用PHP进行安全下载


Allowing secure downloads in PHP for websites

我已经将一些zip文件上传到了我的服务器上,现在如果用户有合适的密码,我想允许他/她下载这些文件。我是用PHP编码的,我已经做到了,除非输入了正确的密码,否则用户无法访问带有zip文件链接的页面,但通过有一个指向我的zip文件的链接,用户可以看到,在未来的情况下,键入zip文件的绝对位置,并绕过我的密码检查。如果我更改了zip文件的文件权限,那么我就不能将其作为链接,因为用户将无法访问它。我如何允许用户获取zip文件,同时保持其安全?任何建议都将不胜感激。

执行此操作的最佳方法是mask url

  • 用户登录
  • 根据他的登录详细信息生成令牌。一些md5或你决定的任何东西
  • 创建一个下载链接(例如:download.php),根据有效的令牌和会话加载文件,并获得带有file_get_contents()的文件

使用.htaccess拒绝直接访问文件。将此.htaccess文件放在相关文件夹中。

然后从php验证用户,在成功验证后,将用户重定向到一个以文件名为参数(甚至id)的download.php,然后使用force download让他们下载。这样,即使他们有到zip文件的直接链接,他们也无法下载该文件。

您需要编写可以隐藏下载链接的代码/链接需要过期,新的链接应该取代它和/或链接应该更改。

您可以用PHP编写它,也可以使用现有的代码来实现这一点。

http://sixthlife.net/product/secure-download-links/