php – 如何在付款后提供大型音频文件供下载

在用户完成PayPal交易后,我想在我的网站上提供可供下载的音频文件.它的商业方面已经编写和工作 – 该网站使用Zend Framework在
PHP中构建.

因此,我不会对存储和带宽产生大量费用,我希望将这些文件托管在Amazon S3等服务上.但是,我不确定这是否适合我的要求.一旦PayPal交易完成,我想为用户分配某种唯一的ID密钥,将它们发送到他们输入密钥的位置,并且他们购买的文件可供下载.钥匙将过期.

我编写代码来生成,存储和删除密钥没有问题.我的问题是:如何保护/隐藏存储在Amazon S3上的文件,然后将其提供给具有URL的授权用户,该URL随后变为无效,同时还直接从亚马逊传输文件,而不是通过我的服务器?

这可能,还是需要其他解决方案?

最佳答案 Amazon S3具有“预签名URL”功能,允许您构建URL以访问受其他方式保护的内容,并具有时间限制.见
the Query String Request Authentication Alternative documentation.

点赞