如何隐藏其他服务器的下载链接?

时间:2015-04-15 20:26:51

标签: php

我在我的网站上销售视频。用户必须付费才能访问文件(在线下载或流式传输)

问题:视频文件不在我的主服务器上!我将它们存储在另一台服务器上。(下载的特殊服务器。我不想使用我的主服务器的带宽)我不想为用户提供直接链接。 (不要让他们与他人分享链接......)。我怎样才能让他们下载文件或流式传输视频而不给他们直接链接?

点:
- 我的下载服务器中没有数据库(mysql) - 我不想使用我的主站点的带宽。只是检查付款和控制用户帐户 - 流媒体并不是那么重要。但我必须让他们下载文件 - 我在woo commerce插件(wordpress)中看到过,它甚至为远程服务器创建了临时下载链接。我检查了临时下载链接的解决方案,但所有工作对于同一台服务器而不是远程的....

1 个答案:

答案 0 :(得分:2)

我认为最简单的方法是:

  1. 公共服务器必须能够以适当的权限建立与其他服务器的SSH(最好)连接。
  2. 成功请求后,创建一个指向原始文件的随机符号链接。
  3. 将符号链接文件名存储在数据库中,并保存用户的IP - 或其他一些唯一标识符(或md5' IP +用户代理 - 它由您自己决定)。
  4. 如果请求有效(与数据库中的记录匹配),请让他下载该文件。否则将他重定向到错误页面。
  5. 设置一个cron来删除超过X小时的符号链接。