1

我正在用 PHP 开发一个在线视频销售网站。要下载特定视频,用户支付特定金额,然后我提供下载视频的链接。我使用以下代码向用户提供下载链接。

header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;

我已将所有视频存储在特定文件夹中。如何阻止用户阻止用户,使他们无法查看该视频文件夹并且无法免费下载视频。或者无法抓取网站并下载所有内容。

4

3 回答 3

5

将该文件夹保留在服务器的 DocumentRoot 之外,因此只能通过您的脚本访问这些文件。

于 2013-04-29T10:41:56.843 回答
1

您可以使用 htacess 将该文件夹设为 Forbidden,其中包含媒体文件。

RedirectMatch 403 ^.*/sub/folder/index\.php$

(或者)

<Directory full-path-to/USERS>
     Order Deny,Allow
     Deny from All
</Directory>
于 2013-04-29T10:58:14.053 回答
0

将用户购买的文件存储在数据库中,如果允许该用户下载该文件,则在您的下载脚本中运行检查,如果不重定向它们。

于 2013-04-29T10:42:56.293 回答