gpt4 book ai didi

php - 如何防止来自 Internet 下载管理器 IDM 的文件 HotLink

转载 作者:可可西里 更新时间:2023-10-31 22:14:32 31 4
gpt4 key购买 nike

我在修复媒体文件热链接或使用 IDM 下载时遇到了一些问题,我正在使用 PHP 提供视频文件并且工作正常,但我注意到我计算机上安装的 IDM 能够将下载框添加到我正在播放的视频中使用jwplayer播放。我更改了代码结构并添加了htaccess来重写链接,因此不显示直接访问文件。

mysite.com/file.php?myvideo.flv -> mysite.com/api/file/JU78vhx5uh

我能够在 JWPlayer 中实现它,它在使用 PHP 服务时可以工作,但同一个 IDM 获取我的视频文件,我搜索其他方式,即 htaccess,它在下面

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mysite\.com/ [NC]

RewriteCond %{HTTP_REFERER} !^$

RewriteRule .*\.(mp4|flv|mp4|mp3)$ /video/thieve.flv [L]

这只适用于网络浏览器并且不会阻止 IDM 软件,我找到了另一个 PHP 引用验证器,它检查引用链接。

if (strpos($_SERVER['HTTP_REFERER'],'mysite.com')===0)

{
header("Location: whatever.php"};
}else{
header("Location: index.php");
}

注意:我发现 IDM 将此信息发送到我的脚本

  1. 用户代理:Mozilla/4.0%20(compatible;%20MSIE%208.0;%20Windows%20NT%206.0;%20Trident/4.0)

  2. Http_referer:mysite.com/api/file/JU78vhx5uh(和播放我视频的页面一样)

请问我还有什么方法可以防止从该软件进行热链接,因为该网站提供免费视频流,我不想下载我的视频。

最佳答案

一般来说,阻止用户下载您的视频的唯一方法是真正通过服务器进行流式传输。通过显示已经预加载的视频帧的“模拟流”将始终以一种或另一种方式“破解”,因为最终您需要播放器软件知道地址 - 当然是完整的 .avi/.mp4/。随便。

有很多流媒体服务器,也有一些开源的。一个好的起点可能是 this list .对于 Linux,Darwin 可能是最佳选择之一。

一旦您真正流式传输您的内容,只有非常高级的用户才能使用流式抓取器获取您的内容(我认为甚至有些服务器无法做到这一点,例如 Adob​​e 的流式处理解决方案)。

关于php - 如何防止来自 Internet 下载管理器 IDM 的文件 HotLink,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14233850/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com